常见指令以及权限理解
命令格式:
command [-options] parameter1 parameter1
命令 选项 参数1 参数2
1.
command
为命令名称,例如变化目录的cd
等2.中括号
[ ]
实际在命令中是不存在的,这个中括号代表可选,通常选项前面会添加一个符号-
,比如ls
或者ls-a
。3.命令、选项、参数等这几个东西中间用空格来区分,无论空几格,shell一律视为一个空格
4.Linux当中大写和小写是完全不一样的比如
cd
和CD
。
ls指令
功能:对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。
-a 列出目录下的所有文件,包括以 . 开头的隐含文件(常用)
-d 仅列出目录本身,而不是列出目录内的文件数据(常用)
-i 输出文件的 i 节点的索引信息。 如 ls –ai 指定文件
-k 以 k 字节的形式表示文件的大小。ls –alk 指定文件
-l 列出文件的详细信息,包含文件的属性与权限等数据(常用)
-n 用数字的 UID,GID 代替名称。(介绍 UID, GID)
-f 直接列出结果,而不进行排序(ls默认会以文件名进行排序)
-F 在每个文件名后附上一个字符以说明该文件的类型,“*”表示可执行的普通文件;“/”表示目录;“@”表示符号链接;“|”表示FIFOs;“=”表示套接字(sockets)。(目录类型识别);没有代表文本文件
-r 将排序结果反向输出,例如:原本文件名由小到大,反向则为由大到小
-t 以时间排序。
-s 在l文件名后输出该文件的大小。(大小排序,如何找到目录下最大的文件)
-R 列出所有子目录下的文件。(递归)
-1 一行只输出一个文件。
ls
就是输出当前目录下的文件(不包括隐藏的文件)。
如果要查看隐藏的文件,可以使用
-a
选项来查看。
先创建一个隐藏文件:
可以看到ls
是看不到创建的yincang.txt
文件的,但如果使用ls -a
。
这样就可以看到隐藏的文件了。
如果要查看文件的详细信息的话,可以使用
ls -l
,也可以简写为ll
如果还要看隐藏文件的详细信息可以写为
ls -la
或者ls -al
都是可以的。
指定目录只需要在命令后面加上目录的名字就行。
如果我只想查看
108
这个目录的信息而不是108这个目录下文件的信息可以使用-d
命令
ls -ld
pwd命令
**功能:**pwd命令主要用于查看用户当前所在的目录。
cd指令
**功能:**改变工作目录,将当前工作目录改变到指定的目录下
cd … : 返回上级目录
cd /home/litao/linux/ : 绝对路径
cd …/day02/ : 相对路径
cd ~:进入用户家(home)目录
cd -:返回上一次访问的目录
可以看到.
和..
都是目录文件,目录文件就可以用cd
打开,cd ..
是返回上一行,那么cd .
是什么呢?
可以看到输入cd .
之后目录没有发生任何改变,其实.
是用于定位当前目录的,作用场景一般在运行某个C语言程序的时候用于定位当前目录。
gcc test.c
./1.out
touch指令
功能:touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。
-a 或–time=atime或–time=access或–time=use只更改存取时间。
-c 或–no-create 不建立任何文档。
-d 使用指定的日期时间,而非现在的时间。
-f 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。
-m 或–time=mtime或–time=modify 只更改变动时间。
-r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
-t 使用指定的日期时间,而非现在的时间。
mkdir指令
功能:在当前目录下创建一个名为 “dirname”的目录
-p 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立
好那些尚不存在的目录,即一次可以建立多个目录;
mkdir –p d/d1/d2/d3/d4/d5 : 递归建立多个目录
rmdir和rm指令
rmdir是一个与 mkdir相对应的命令。mkdir是建立目录,而rmdir是删除命令。
rm命令可以同时删除文件或目录
-f 即使文件属性为只读(即写保护),亦直接删除
-i 删除前逐一询问确认
-r 删除目录及其下所有文件
如果直接用rm -r
去删除的话会一个一个问是否要删除,因为r
代表的是递归,如果不想出现是否确认删除的提示可以添加一个参数-f
这样就删除成功了。