目录
Linux touch命令用于修改文件或者目录的时间属性,包括存取时间和更改时间。若文件不存在,系统会建立一个新的文件。
使用指令"touch"时,如果指定的文件不存在,则将创建一个新的空白文件。例如,在当前目录下,使用该指令创建一个空白文件"kong.txt",输入如下命令:
[root@zhao ~]# touch kong.txt
[root@zhao ~]# ls
aa anaconda-ks.cfg hubei hunan kong.txt lianxi meinv shanghai shuaige
使用指令"touch"修改文件"kong.txt"的时间属性为当前系统时间,输入如下命令:
[root@zhao ~]# touch kong.txt ##修改文件的时间属性
首先,使用ls命令查看kong.txt文件的属性,如下所示: 执行指令"touch"修改文件属性以后,并再次查看该文件的时间属性,如下所示:
[root@zhao ~]# ls -l kong.txt #查看文件的时间属性
-rw-r--r--. 1 root root 0 3月 4 11:46 kong.txt
[root@zhao ~]# touch kong.txt #修改文件时间属性为当前系统时间
[root@zhao ~]# ls -l kong.txt #查看文件的时间属性
-rw-r--r--. 1 root root 0 3月 4 12:38 kong.txt
Linux file命令用于辨识文件类型。
通过file指令,我们得以辨识该文件的类型
linux里不要被后缀名迷惑了,可以使用file命令查看文件的类型
file 查看文件的类型
empty 空文件
directory 目录=文件夹
symbolic link 符号链接=快捷方式
- text/plain:普通文本。
- text/html:HTML文本。
- application/pdf:PDF文档。
- application/msword:Word文档。
- image/png:PNG图片。
- mage/jpeg:JPEG图片。
- application/x-tar:TAR文件。
- application/x-gzip:GZIP文件。
参数:
- -b 列出辨识结果时,不显示文件名称。
- -c 详细显示指令执行过程,便于排错或分析程序执行的情形。
- -f<名称文件> 指定名称文件,其内容有一个或多个文件名称时,让file依序辨识这些文件,格式为每列一个文件名称。
- -L 直接显示符号连接所指向的文件的类别。
- -m<魔法数字文件> 指定魔法数字文件。
- -v 显示版本信息。
- -z 尝试去解读压缩文件的内容。
- [文件或目录...] 要确定类型的文件列表,多个文件之间使用空格分开,可以使用shell通配符匹配多个文件。
显示文件类型
[root@zhao ~]# file kong.txt
kong.txt: empty
[root@zhao ~]# file kong.txt #不显示文件名称
kong.txt: empty
[root@zhao ~]# file -i kong.txt #显示MIME类型
kong.txt: inode/x-empty; charset=binary
显示符号链接的文件类型
[root@zhao ~]# ls -l /var/lock
lrwxrwxrwx. 1 root root 11 3月 1 18:17 /var/lock -> ../run/lock
[root@zhao ~]# file /var/lock
/var/lock: symbolic link to `../run/lock'
[root@zhao ~]# file -L /var/lock
/var/lock: directory
(英文全拼:copy file)命令主要用于复制文件或目录。
cp命令的复制可以1.单个文件的复制、2.多个文件的复制、3.文件的复制,粘贴,重命名一步到位
[root@zhao lianxi]# touch changsha.txt
[root@zhao lianxi]# mkdir hunan
[root@zhao lianxi]# ls
1.txt 2.txt 3.txt changsha.txt hunan shuaige
[root@zhao lianxi]# ls hunan
[root@zhao lianxi]# cp changsha.txt hunan
源文件 目的地
[root@zhao lianxi]# ls hunan
changsha.txt
可以多个文件复制
[root@zhao lianxi]# ls hunan
changsha.txt
[root@zhao lianxi]# touch wuhan.txt
[root@zhao lianxi]# ls
changsha.txt hunan shuaige wuhan.txt
[root@zhao lianxi]# cp *.txt hunan
cp:是否覆盖"hunan/changsha.txt"? y
[root@zhao lianxi]# ls hunan
changsha.txt wuhan.txt
使用指令 cp 将当前目录复制到新目录shuaige下,输入如下命令:
#目录与目录之间的复制需要加 -r或者-R
[root@zhao lianxi]# ls
1.txt 2.txt 3.txt shuaige
[root@zhao lianxi]# cp -r 1.txt 2.txt 3.txt shuaige #目录与目录之间的复制需要加 -r或者-R
[root@zhao lianxi]# ls shuaige
1.txt 2.txt 3.txt
复制到目的地并且重命名
[root@zhao lianxi]# ls shuaige
1.txt 2.txt 3.txt
[root@zhao lianxi]# cp changsha.txt shuaige/cs.txt
[root@zhao lianxi]# ls shuaige
1.txt 2.txt 3.txt cs.txt
cp命令和绝对路径的使用
[root@localhost lianxi]# cp /etc/passwd . 将/etc/passwd 文件复制到当前目录下
[root@localhost lianxi]# cp /etc/passwd /lianxi/hunan
[root@localhost lianxi]# ls /lianxi/hunan
fengdeyong.txt feng.txt passwd songyuxiao.txt syx.txt weijunlin.txt
(英文全拼:move file)命令用来为文件或目录改名、或将文件或目录移入其它位置。
语法
mv [options] source dest mv [options] source... directory
参数说明:
- -b: 当目标文件或目录存在时,在执行覆盖前,会为其创建一个备份。
- -i: 如果指定移动的源目录或文件与目标的目录或文件同名,则会先询问是否覆盖旧文件,输入 y 表示直接覆盖,输入 n 表示取消该操作。
- -f: 如果指定移动的源目录或文件与目标的目录或文件同名,不会询问,直接覆盖旧文件。
- -n: 不要覆盖任何已存在的文件或目录。
- -u:当源文件比目标文件新或者目标文件不存在时,才执行移动操作。
mv 参数设置与运行结果
(英文全拼:remove)命令用于删除一个文件或者目录
Linux里默认是没有回收站,删除后不能通过回收站恢复,可以使用一些恢复软件恢复。
删除的文件如果不存在,直接忽略不报错,也不给予任何提醒。
语法
rm [options] name...
参数:
- -i 删除前逐一询问确认。
- -f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。
- -r 将目录及以下之档案亦逐一删除。
" * " 、" ? "是通配符
rm -rf -sc* -接开头字母或字样加*号代表一系列删除
[root@zhao lianxi]# rm -rf sc*
[root@zhao lianxi]# ls
1.txt 2.txt 3.txt changsha.txt create_user.sh hunan shuaige wuhan.txt
?通配符 一个?符只能接一个字符
[root@zhao ~]# ls
aa anaconda-ks.cfg bbb.txt lianxi shanghai xiang
[root@zhao ~]# mkdir aab acd ac acc add
[root@zhao ~]# ls
aa aab ac acc acd add anaconda-ks.cfg bbb.txt lianxi shanghai xiang
[root@zhao ~]# rm -rf a?
[root@zhao ~]# ls
aab acc acd add anaconda-ks.cfg bbb.txt lianxi shanghai xiang
[root@zhao ~]# rm -rf a??
[root@zhao ~]# ls
anaconda-ks.cfg bbb.txt lianxi shanghai xiang
rmdir 用来删除空文件夹,非空的文件夹不能删除
[root@zhao ~]# ls
aa anaconda-ks.cfg bbb.txt lianxi shanghai xiang
[root@zhao ~]# ls aa
bb
[root@zhao ~]# rmdir aa
rmdir: 删除 "aa" 失败: 目录非空
ln(英文全拼:link files)命令是一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同步的链接。
当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在 其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。
语法:
ln [参数][源文件或目录][目标文件或目录]
软链接:
- 1.软链接,以路径的形式存在。类似于Windows操作系统中的快捷方式
- 2.软链接可以 跨文件系统 ,硬链接不可以
- 3.软链接可以对一个不存在的文件名进行链接
- 4.软链接可以对目录进行链接
硬链接:
- 1.硬链接,以文件副本的形式存在。但不占用实际空间。
- 2.不允许给目录创建硬链接
- 3.硬链接只有在同一个文件系统中才能创建
必要参数:
- -b 删除,覆盖以前建立的链接
- -d 允许超级用户制作目录的硬链接
- -f 强制执行
- -i 交互模式,文件存在则提示用户是否覆盖
- -n 把符号链接视为一般目录
- -s 软链接(符号链接)
- -v 显示详细的处理过程
选择参数:
- -S "-S<字尾备份字符串> "或 "--suffix=<字尾备份字符串>"
- -V "-V<备份方式>"或"--version-control=<备份方式>"
- --help 显示帮助信息
- --version 显示版本信息
查看 lianxi 目录的inode内容内容,可以用以下命令:
inode 的内容
inode 包含文件的元信息,具体来说有以下内容:
- 文件的字节数
- 文件拥有者的 User ID
- 文件的 Group ID
- 文件的读、写、执行权限
- 文件的时间戳,共有三个:ctime 指 inode 上一次变动的时间,mtime 指文件内容上一次变动的时间,atime 指文件上一次打开的时间。
- 链接数,即有多少文件名指向这个 inode
- 文件数据 block 的位置
用户可利用alias,自定指令的别名。若仅输入alias,则可列出目前所有的别名设置。alias的效力仅及于该次登入的操作。若要每次登入是即自动设好别名,可在.profile或.cshrc中设定指令的别名。
语法:
alias [别名]=[指令名称]
### 别名可以自己定义,但是不能和系统里的已经存在的命令冲突,如果有冲突,会导致原命令不可用###
###定义别名的时候使用引号:是因为当定义别名的时候,命令里有选项 中间有空格,就需要使用双引号或者单引号扩起来###
Linux unalias命令用于删除别名。
unalias为shell内建指令,可删除别名设置。
语法:
unalias [-a][别名]
参数:
- -a 删除全部的别名。