Linux常用命令

cd

cd ~ //回到用户目录
cd . //当前目录
cd .. //回到上一级目录
cd / //回到根目录
cd - //返回上一次cd切换的目录

ls

ls //列出所有文件,不包含隐藏文件
ls -a //列出包括隐藏文件在内的所有文件和目录
ls -A //列出除了“.”和“..”之外的所有文件和目录
ls -R //列出目录下包含的所有文件,包括子目录中的文件
ls -l //列出所有文件的同时,列出其详细的信息


文件详细信息
  • 第一个字段:第一列“-”表示文件,“d”表示目录;
    之后,每三列代表一组权限,第一组表示文件拥有者(User)权限,第二组表示文件所属分组(Group)其他用户的权限,第三组表示其他分组的用户(Other Users)权限。w代表写权限(write),r代表读权限(read),x代表执行权限(execute)。
  • 第二个字段,若是文件,则表示硬链接数,“1”则表示没有硬链接;若是文件夹则表示子目录数,空目录则值为“2”,因为默认有...两个文件。
  • 第三个字段代表用户名
  • 第四个字段代表文件所属分组
  • 第五个字段表示文件的大小,以字节为单位
  • 第六个字段表示文件最近一次修改的时间
  • 第七个字段表示文件名称

ls -t //按时间先后顺序列出当前目录所包含的文件
ls -r //列出所有文件和目录并以相反的顺序排序
(ls -r //与ls列出的文件顺序相反;ls -tr //与ls -t列出的文件顺序相反)
ls f* //列出所有名称以f开头的文件
ls *.ko //列出所有为.ko后缀的文件
(f*和*.后缀名,这种文件参数的使用方式对删除命令也适用)

help

ls --help
cd --help //对应命令的帮助信息

pwd

pwd //列出文件的路径

clear

清屏命令,相当于Ctrl+D

mkdir

mkdir [目录名] //创建目录
mkdir -p [目录名] //当所创建目录的上级目录不存在时,自动创建上级目录

touch

touch [文件名] //新建一个文件
touch [文件1] [文件2] [文件3] //同时创建多个文件,用空格隔开即可
touch -a [文件名]:修改指定文件的访问时间为当前时间(修改时间戳)

cat

cat [文件名] //查看文件内容,不能用cat打开目录
cat -n [文件名]:在每行的开头显示行号
cat -E [文件名]:在每行的末尾标注$符号

which

which ls
which cd
which pwd //列出命令是哪个目录下的命令

whereis

查找指定文件,并输出其位置
whereis bash

echo

echo [内容]:直接打印具体的内容,或打印终端变量的内容。可以加双引号,也可以不加
echo $path //列出shell会从哪些目录下调用命令程序,列出的目录用“:”隔开

rm

rm:删除命令,用来删除一个或多个文件或目录
rm -f //强行删除,忽略不存在的文件,不提示确认。(f为force的意思)
rm -i //进行交互式删除,即删除时会提示确认。(i为interactive的意思)
rm -r //将参数中列出的全部目录和子目录进行递归删除。
(r为recursive的意思,删除目录必须使用-r这一命令选项,否则只能删除普通文件)
rm -v //详细显示删除操作进行的步骤。(v为verbose的意思)
rm -d //删除目录

rmdir:只用来删除空目录,不能用于删除非空目录
rmdir [目录名]
rmdir -p [目录名]:递归删除空目录,意思是若子目录删除后父目录为空,则父目录也被删除

>和>>

输出重定向:>和>>
将直接在终端输出的内容重定向到指定的文件中,重定向不会创建新的文件
echo test > test.txt //将test字符串输出到test.txt文件中,并保存,但会覆盖原来的内容
echo test1 >> test.txt //将test1字符串输出并追加到test.txt文件中,并保存,不会覆盖原来的内容
ls > test.txt //将ls命令输出的内容保存到test.txt文件中,并覆盖之前的内容

sudo

sudo命令:switch user do,即切换用户去做
在需要root权限的命令前添加sudo命令,sudo命令执行的结果,往往普通用户无权限修改。
如:在home目录下sudo touch test.txt(一般用户没有在home目录下新建文件的权限)
sudo !! //表示sudo上一条命令,即用sudo权限执行上一条命令

poweroff

poweroff//关机
reboot //重启

man

man:查看Linux自带的参考手册
man ls //查看ls命令是使用说明
man man //查看man命令的说明


man章节描述
  • 一共有9个章节,包含9种类型的内容,按“q”退出。

man printf //查看printf函数的说明
man -s 3 printf //查看第三章库调用中的printf函数说明(-s可以省略)


第三章printf函数说明
  • 分布包括函数名称及综述,函数调用需要包含的头文件,函数的原型等等,按“q”退出。

chmod

chmod:修改用户对文件的权限,只有文件的所有者和超级用户可以修改文件或目录的权限。
chmod -R ugo+x file

  • -R:表示对file目录下所有文件和子目录及其所有文件的权限进行变更(以递归的方式逐个变更)
  • ugo:作用同字母a,表示对拥有者(u),分组的其他成员(g)和其他分组的成员(o)的权限进行变更;
    若为u,则只变更拥有者权限。
  • +:表示增加权限,+x表示增加执行权限;
    若为-,则表示删除执行权限,若为=,则为重新设置权限,即指定所有用户对file文件都只有执行权限。
  • file:表示名称为file的目录文件。

chmod 777 file等价于chmod a = rwx file

  • 用八进制语法表示权限,R W X分布对应八进制的三位:即4+2+1=7,设置那一位代表的权限,则置1,否则置0。

chmod -R a+r *

  • 为当前目录所有文件和子目录及其所有文件增加读权限。

chmod 4755 file1 file2

  • 设置所有使用file1和file2的用户,在使用file1和file2文件时都具有root权限(特殊权限),剩下的755表示u=rwx,g=rx,o=rx;
  • 同时设置多个文件的权限时用空格隔开。

chown

chown [参数] [分组.用户名] [文件或目录名]:修改文件或目录的拥有者,分组和用户名都可以省略一个。
参数:

  • -R:递归处理,将指定目录下的所有文件和子目录一同处理;

chown root.root file

  • 修改file文件的拥有者为root分组中的root用户。

cp

cp [参数] [源地址] [目标地址]:复制文件或文件夹
参数:

  • -f :强行复制文件,不管要复制的文件是否已经存在于目标目录;
  • -I :覆盖现有文件之前询问用户;
  • -r 或-R :递归处理,将指定目录下的文件及子目录一并处理

cp file1 file2

  • 复制file1的一份副本file2到当前目录中。

mv

mv [参数] [源地址] [目标地址]:移动文件,或给文件重命名
参数:

  • -b :如果要覆盖文件的话覆盖前先进行备份;
  • -f :若目标文件或目录与现在的文件重复,直接覆盖目的文件或目录;
  • -i :在覆盖之前询问用户。
    若在同一目录下移动在,则对文件进行重命名

mv file1 file2

  • 重命名file1文件名为file2。

du和df命令

  • du:递归显示指定目录或文件的大小
  • df:显示系统磁盘的使用情况

zip

zip [参数] [压缩文件名.zip] [源文件]:压缩并得到后缀为.zip的压缩文件。
参数:

  • -r :递归压缩,将指定目录下的所有文件和子目录一起压缩;
  • -v :显示指令执行过程;
  • -num :压缩率,为 1~9 的数值。

unzip

unzip [参数] [压缩文件名.zip]:对.zip格式的压缩包进行解压。
参数:

  • -l :显示压缩文件内所包含的文件;
  • -v :显示压缩的执行过程;
  • -n :解压缩时不要覆盖原有文件。

tar

tar [参数] [压缩文件名] [源文件]:压缩或解压其他格式的压缩文件,如常用的.bz2文件和.gz文件

  • -c :创建新的压缩文件;
  • -v:显示压缩执行过程;
  • -j:用tar生成压缩文件,然后用bzip2进行压缩或解压缩;
  • -z:用tar生成压缩文件,然后用gzip进行压缩或解压缩;
  • -f:指定压缩文件。
  • -x:从压缩文件中还原(解压缩)文件。

tar -vcjf file.tar.bz2 file

  • 将file文件压缩为.bz2格式的文件

tar -vczf file.tar.gz file

  • 将file文件压缩为.gz格式的文件

tar -vxjf file.tar.bz2

  • 解压.bz2格式的压缩文件

tar -vxzf file.tar.gz

  • 解压.gz格式的压缩文件

find

find [路径] [参数] [关键字]:查找文件
路径指目标文件的路径,不写的话默认指当前路径,关键字是文件名的一部分。
参数:

  • -name<文件名称>:查找文件指定文件名称的文件,可以使用通配符*,但要加引号;
  • -gid<群组识别码>:查找符号指定群组识别码的文件或目录;
  • -group<群组名称>:查找符合指定群组名称的文件或目录;
  • -user<拥有者名称>:查找符合指定拥有者名称的文件或目录;
  • -size<文件大小>:查找符合指定文件大小的文件或目录;
    -size 1024c:表示大小为1024字节的文件
    -size +1024c:表示大小大于1024字节的文件,小于则用减号
  • -type<文件类型>:查找符合指定文件类型的文件或目录;参数f表示普通文件,参数d表示目录文件,参数l表示链接文件,参数c表示字符型文件,参数b表示区块型文件
  • -perm:指定要查找的文件权限信息,参数用三位八进制数表示

find /etc/ -name Vim*

  • 在/etc目录下查找Vim开头的文件或目录,包括其子目录中的文件或目录。

grep

grep [参数] [关键字] [文件目录]:查找文件内容包含指定关键字的文件
参数:

  • -i:忽略关键字大小写;
  • -d:当查找的是某一目录而不是文件时,必须使用此参数;
  • -r:在指定的目录中递归查找(当前目录及其所有的子目录);
  • -v:表示反向查找,查找出不包含指定条件的文件;
  • -n:显示查找到的关键字所在的行号;
  • 关键字样式可以包含空格,但要加引号。参数可以使用通配符,不用加引号,如果参数是一个目录,则必须使用-r选项

grep -ir file /usr

  • 在/usr目录下查找包含file关键字的文件,file关键字所在的行。

ln

  • 为文件创建链接
  • ln [选项] [源文件] [链接文件]
  • -s:创建软链接
    不加选项,则创建硬链接
  • 无论修改链接还是修改源文件,所有链接文件同步更新修改;目录只可创建软链接,不能创建硬链接;删除源文件后,硬链接依旧可以用来访问原来的文件,软链接则出现指向错误,恢复源文件后,软软链接恢复指向,硬链接依旧代表原来的文件,此时硬链接失效

su

  • 用于切换当前用户
  • su [选项] [用户名]
  • sudo:以超级用户的身份执行命令
  • 不可随意切换用户,需要root用户权限时,就使用sudo命令
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1、ls命令 就是list的缩写,通过ls 命令不仅可以查看linux文件夹包含的文件,而且可以查看文件权限(包括...
    zjk_00阅读 372评论 0 1
  •     linux下的命令非常多,但常用的就那么几个,掌握基本命令以后,不常用的只要在用的时候搜一下就行,事实上也...
    程序大飞阅读 2,541评论 1 5
  • 1、ls命令 就是list的缩写,通过ls 命令不仅可以查看linux文件夹包含的文件,而且可以查看文件权限(包...
    不倒翁的归宿阅读 235评论 0 0
  • 这篇笔记包含以下知识点:几个概念的理解:Linux命令,控制台,终端, 终端提示符对文件目录的操作的相关命令: 切...
    古月半半阅读 583评论 0 0
  • 1. 最普通的命令 最普通、简单的命令,平时肯定用过很多,但是有些非常有用,但平时不多用的,本次列出来,如下: s...
    求索77阅读 425评论 0 0