Linux常用命令
ls命令
(list 列表)用于查看文件和目录
ls命令参数
- -l :列出长数据串,包含文件的属性与权限数据等 详细信息
- -a :列出全部的文件,连同隐藏文件(开头为.的文件)一起列出来(常用)
- -d :仅列出目录本身,而不是列出目录的文件数据
- -h :将文件容量以较易读的方式(GB,kB等)列出来
- -R :连同子目录的内容一起列出(递归列出),等于该目录下的所有文件都会显示出来
示例:ls -a 代表显示所有文件,包括隐藏文件和文件夹
ls -l显示可显示文件的详细信息 不包括隐藏文件
参数之间可以组合,比如
ls -la 或 ls -a -l显示所有文件的详细信息
————————————————————————————————————————————
cd命令
(change directory)用于切换目录,也就是跳转到某个目录的指令
cd aaa 切换到当前目录下的aaa文件夹 这里有一点要注意的是如果aaa文件夹是在根目录下 就可以
cd /aaa 如果此时不是在根目录下 第一个字符就不能是/ 比如此时在bbb文件夹下有一个aaa文件夹,此时在的目录是bbb文件夹,那么要打开aaa文件夹的命令就是cd aaa 而不能是cd /aaa 因为/代表的是根目录
cd ./ 当前文件夹
cd ../切换到上一层文件夹
cd ~ 切换到用户主目录 即普通user用户下的/home/user,如果是root用户,就是、root
cd - 切换到上一个所在目录
cd /切换到根目录
——————————————————————————————————————————————————————
pwd命令
(print work directory,打印工作目录)
打印当前所在目录的绝对路径
——————————————————————————————————————————————————————、
rm命令
(remove 用于删除文件或者文件夹)
- -f :就是force的意思,忽略不存在的文件,不会出现警告消息
- -i :互动模式,在删除前会询问用户是否操作
- -r :递归删除,删除该目录下所有的东西,最常用于目录删除,它是一个非常危险的参数
示例:
rm -rf /test 强制删除test目录下的所有文件和文件夹 包括test目录一起删除,并且不会有提示信息
rm -r /test 删除test目录下的所有文件和文件夹,对于每个文件都会询问是否确认删除
rm aaa.txt bbb.txt 删除aaa.txt和bbb.txt文件
——————————————————————————————————————————————————————————
mv命令
(重命名或者移动文件)
- -f :force强制的意思,如果目标文件已经存在,不会询问而直接覆盖
- -i :若目标文件已经存在,就会询问是否覆盖
- -u :若目标文件已经存在,且比目标文件新,才会更新
移动文件语法:mv 源文件路径 目的文件路径(必须要是全路径 即带文件名的路径)
重命名语法: mv 源文件名 新文件名
示例:
mv aaa.txt test/aaa.txt 从当前文件夹移到test文件夹
mv test/aaa.txt ./aaa.txt 将文件从test目录移动到当前目录
mv aaa.txt bbb.txt 文件aaa.txt重命名为bbb.txt
mv test 如果什么参数都不加,这样的删除是错误的,可以无参数直接删除文件但是不能无参数的直接删除一个文件夹,
———————————————————————————————————————————————————
rmdir
(remove directory,删除文件夹)
作用:删除空文件夹
rmdir只能删除空文件夹(非空时有提示,哪怕是里面有多个空文件夹也不行)
————————————————————————————————————————————————————
mkdir
(创建文件夹)有一个可选参数 -p代表是否递归创建
示例
mkdir test 在当前目录创建一个test文件夹
mkdir -p test/aaa 创建test文件夹 并且在test文件夹中创建aaa文件夹
——————————————————————————————————————————————————————————
cp
copy 复制文件夹或文件)
可以一起复制多个文件,cp命令的参数如下
- -a :将文件的特性一起复制
- -p :连同文件的属性一起复制,而非使用默认方式,与-a相似,常用于备份
- -i :若目标文件已经存在时,在覆盖时会先询问操作的进行
- -r :递归持续复制,用于目录的复制行为
- -u :目标文件与源文件有差异时才会复制
- -f : 强制复制 不询问
语法 : cp 源文件完全路径 目标路径
示例
cp 1.txt test 将当前目录下的1.txt复制到当前目录的test文件夹中
cp test/1.txt /aaa 将test文件夹中的1.txtf复制到根目录下的aaa文件夹
cp -rf test aaa 将test目录下所有的东西复制到aaa文件夹,并且不询问
————————————————————————————————————————————————————————
grep
命令(用于查找字符串对应行,如果有这个字符串,就把该行内容显示出来)
参数如下
- -a :将binary文件以text文件的方式查找数据
- -c :计算找到‘查找字符串’的次数
- -i :忽略大小写的区别,即把大小写视为相同
- -v :反向选择,即显示出没有‘查找字符串’内容的那一行
语法如下:
- grep [-acinv] [--color=auto] '查找字符串' filename
示例
grep --color=auto ‘aaa’ /1.txt 在1.txt中查询带有aaa的行 并且把关键字标上颜色
————————————————————————————————————————————————————————
tar 命令
(用于压缩与解压)
Linux中的打包文件一般是以.tar结尾的,压缩的命令一般是以.gz结尾的。
常用参数如下:
- -c :新建打包文件
- -t :查看打包文件的内容含有哪些文件名
- -x :解打包或解压缩的功能,可以搭配-C(大写)指定解压的目录,注意-c,-t,-x不能同时出现在同一条命令中
- -j :通过bzip2的支持进行压缩/解压缩
- -z :通过gzip的支持进行压缩/解压缩
- -v :在压缩/解压缩过程中,将正在处理的文件名显示出来
- -f filename :filename为要处理的文件
- -C dir :指定压缩/解压缩的目录dir
语法:压缩:tar -zcvf 打包压缩后的文件名 要打包压缩的文件
解压 tar -zcvf 压缩文件名 -C 要解压到的目录
示例:打包并压缩/test下的所有文件 压缩后的压缩包指定名称为xxx.tar.gz
tar -zcvf xxx.tar.gz aaa.txt bbb.txt ccc.txt
或:tar -zcvf xxx.tar.gz /test/*
————————————————————————————————————————————————————————
chmod命令
该命令用于改变文件的权限,一般的用法如下:
同时,chmod还可以使用u(user)、g(group)、o(other)、a(all)和+(加入)、-(删除)、=(设置)跟rwx搭配来对文件的权限进行更改。
示例:修改/test下的aaa.txt的权限为属主有全部权限,属主所在的组有读写权限,
其他用户只有读的权限
chmod u=rwx,g=rw,o=r aaa.txt
touch
创建一个空文件
示例:touch 1.txt 创建一个1.txt里面没有内容
——————————————————————————————————————————————————————————————————、
cat (查看文本文件的内容)将所有文件内容直接显示出来,不分页
more 将文件内容分页显示
less 可以上下滚动查看文件内容
——————————————————————————————————————————————————————————
man 查询手册