- 功能:查看当前路径(print working dirrctory)
- 命令格式:
pwd [-L | -P]
-
相关选项:
- -P:显示真正的路径,而非使用链接路径
- 例如:
- 功能:查看当前/指定路径的所有文件、目录(默认不显示隐藏文件)
- 命令格式:
- ls [选项] [颜色] [时间] 文件/目录名
-
相关选项:
- -a :显示所有文件、目录(包括隐藏文件),(Linux中隐藏文件以.开头)
- -A:显示所有文件、目录(包括隐藏文件),但不包括.与..这两个目录
- -d:仅列出目录,不列出目录内的文件/子目录
- -F:根据文件、目录等信息,给予附加数据结构,例如:*:代表可执行文件,/:代表目录,=:代表socket文件,|:代表FIFO文件
- -i:列出inode号码
- -l :显示详细信息(文件大小、权限、最后修改信息)
- -h:将文件大小以K、M、G表示,与-l、-s配合使用(单独使用-h不显示文件大小)
- -n:列出UID与GID而非使用者与用户组的名称
- -R:连同子目录一起列出来,等于该目录的所有文件都会列出来
- -f:直接列出结果,而不进行排序(ls默认会以文件名进行排序)
- -r:将结果逆序输出,例如:文件名从小到大,则变为从大到小
- -S:以文件容量大小排序,从大到小
- -t:以时间排序,时间从新到旧
-
颜色相关选项:
- --color=never:不要依据文件特征给予颜色显示
- --color=always:显示颜色
- --color=auto:系统自行依据设置来是否给出颜色
-
时间相关选项:
- --full-time:以完整时间模式(年、月、日、时、分)输出
- --time=atime:输出atime时间(读取时间)
- --time=ctime:输出ctime时间(状态时间)
- 下面是个演示案例:
- 功能:切换路径(cd directory)
- 命令格式:cd [路径]
-
路径:
- . :表示当前目录
- .. :表示上一级目录
- ../.. :表示上上级目录
- ~ :表示当前使用者的家目录
- - :返回上一次操作的路径
- 绝对路径
- 相对路径
- 注意:路径不写时,默认回到自己的家目录
- 功能:清屏
-
两者的区别:
- clear:刷新屏幕,会保留历史命令记录,本质上是让终端向后翻一页
- reset:重新初始化屏幕,清除历史命令记录。
- 功能:新建目录
- 格式:
mkdir [选项] 目录名称
-
选项:
- -m:创建目录时,同时设置目录权限属性,不使用默认属性(umask)
- -p:递归创建多级目录
-
例如:
- mkdir test
- mkdir -p test1/test2/test3 ===>创建多级目录
- mkdir -m 711 test ===>创建目录,属性为rwx--x--x
- 功能:删除目录
- 格式:
rmdir [选项] 目录名称
-
选项:
- -p:递归删除多级子目录(子目录必须为空,不能有其他文件/目录)
- 注意:rmdir不能删除非空目录,下面会介绍用rm删除非空目录
-
例如:
- rmdir test
- rmdir -p test1/test2/test3 ===>test2与test3下面均不能有其他文件
新建文件格式
- 新建单个文件:touch 文件
- 新建多个文件:touch 文件1 文件2...
注意
- 创建的新文件的三个时间(atime/ctime/mtime)都会更新为当前时间
- 如果要新建的文件已经存在,则覆盖旧文件,日期时间都更新为当前
例如
- 新建一个test文件:touch test
- 新建两个文件:touch test1 test2
八、gedit修改文件时间
格式
- touch [选项] 文件
选项
- -a:仅自定义atime
- -c:修改文件的时间,若文件不存在则创建文件
- -d:后面可以设置自定义日期时间,也可以用--date="时期或时间"
- -m:仅修改mtime
- -t:后面可以设置自定义日期时间,格式[YYYYMMDDhhmm]
注意:改变文件的时间或日期时,文件的ctime不会变化,只有mtime和atime会变化
例如
- 将test文件的日期调整为两天前:touch -d "2 days ago" test
- 将test文件的日期改为2014/06/15 2:02 ==>touch -t 201406150202 test
- 注:上面两个文件的ctime不会变化
- 功能:用文本打开文件并编辑
- 功能:删除文件/目录(remove)
- 格式:
rm [选项] 文件/目录
-
选项:
- -i :交互模式,删除之前,询问使用者是否删除
- -r :递归删除
- -f :强制删除,忽略不存在的文件
-
注意:
- 现在很多Linux版本都默认加上了-i选项
- rm删除多级目录时,与rmdir不同,子目录下有文件也可以删除,但必须加上参数-r
-
例如:
- 删除单/多个文件:rm 文件1 文件2 ...
- 删除单/多个目录:rm 目录1 目录2 ...
- 删除多级目录:rm -r 目录/子目录/子目录
- 功能:移动文件/目录路径,或文件/目录重命名(move)
-
格式:
- 移动路径:mv [选项] 源文件/目录名 目标路径
- 重命名:mv [选项] 旧文件/目录名 新目标文件名
-
选项:
- -f:强制的意思。如果目标文件/目录已存在,则不询问直接覆盖
- -i:如果目标文件/目录已存在,则询问后再覆盖
- -u:移动路径时,若目标路径下文件已存在,那么此时源文件/目录比较新时,才会更新
-
注意:
- mv只能用于单个文件/目录的重命名,多个文件的重命名请用rename命令
- 移动多个文件/目录,命令最后一个一定是个目录
-
例如:
- 重命名:mv 旧文件(目录)名 新文件(目录)名
- 移动单/多个文件:mv 文件1 文件2... 目标路径
- 功能:复制文件/目录,建立链接文件(快捷方式)(copy)
- 格式:
cp [选项] 源文件 目标文件
-
选项:
- -a:综合了-dr与--preserve=all选项的所有功能
- -d:若源文件为链接文件的属性,则复制链接文件的属性而非文件本身
- -r:递归复制,用于目录的复制操作
- -i :若目标文件已存在,则询问你是否覆盖
- -f:为强制的意思,若目标文件已经存在且无法开启,则删除后再尝试一次
- -l:进行硬链接的链接文件建立,而非复制文件本身
- -p:连同文件的属性(权限、用户、时间)一起复制,而非使用默认属性
- -s:复制成为符号链接文件(快捷方式)
- -u:若目标文件比源文件旧才更新,否则不更新
- --preserve=all:除了-p的有关参数外,还加入了SELinux的属性,links、xattr等也复制
-
注意:
- 复制多个文件/目录时,一定要加上参数-r,且最后一个一定是个目录
- 利用-a、-p、--preserve=all参数复制文件时,文件的atime、mtime被复制,但是ctime比较特殊(ctime为复制的当前时间)
-
例如:
- 复制单个文件:cp 被复制文件 新文件
- 复制目录:cp -r 被复制目录 目标目录
- 复制多个文件与目录 cp -r 文件1 文件2 目录... 目标目录
- 更新一个文件:cp -u 源文件 目标文件
- 建立一个链接文件:cp -s 源文件 目标文件
- 我是小董,V公众点击"笔记白嫖"解锁更多【Linux入门基础】资料内容。