linux常用命令(一)
对文件和目录进行操作的命令
- pwd
- cd
- ls
- touch
- mkdir
- rmdir
- cp
- mv
- rm
- wc
- du
pwd:显示工作目录路径
命令语法:pwd [选项]
选项 | 含义 |
---|---|
-L | 目录链接时,输出链接路径 |
-P | 输出物理路径 |
cd:更改工作目录路径
命令语法:cd[选项][目录]
选项 | 含义 |
---|---|
cd或cd ~ | 回到用户主目录 |
cd .. | 变当前工作目录路径位置至当前目录的父目录。 |
cd -P | 如果是链接路径,则进入链接路径的源物理路径 |
cd ~li | 改用户工作目录路径位置至用户li的主目录。 |
ls:列出目录和文件信息
选项 | 选项含义 |
---|---|
-a | 显示指定目录下所有子目录的文件,包括隐藏文件 |
-A | 显示指定目录下所有子目录与文件,包括隐藏文件,但不列出“.”和“..” |
-c | 配合-lt:根据车体么排序并显示ctime |
-d | 如果参数是目录,只显示其名称而不显示其下的歌文件和子目录 |
-F | 显示文件类型 |
-i | 在输出的第一列显示文件的inode号 |
-l | 以长格式显示文件的详细信息 |
-r | 逆序排列 |
-t | 根据修改时间排序 |
-s | 一块数形式先生每个文件分配的尺寸 |
-S | 根据文件大小排序 |
例子:显示目录/var下文件的子目录的简单信息
~]# ls /var
显示/root目录下所以文件和子目录的详细信息,包括隐藏文件
~]# ls -al /root
显示/etc目录下的文件和子目录信息,用标记标出文件类型
~]# ls -F /etc
touch:创建空文件、更改文件时间
命令语法:touch [选项] [文件]
选项 | 选项含义 |
---|---|
-a | 只更改访问时间(atime) |
-m | 更改文件的修改时间记录(mtime) |
-c | 假如目标文件存在,则不会建立新的文件 |
-r<文件> | 使用指定文件的时间属性而非当前时间 |
-d<字符串> | 使用指定字符串表示时间而非当前时间 |
-t<日期时间> | 使用[CC]YY]MMDDhhmm[.ss]格式的时间而非当前时间 |
例如:在当前目录下创建文件file1、file2、file3
[root@localhost ~]# touch file1
[root@localhost ~]# touch file2 file3
[root@localhost ~]# ls -l file1 file2 file3
-rw-r--r--. 1 root root 5 Aug 3 22:12 file1
-rw-r--r--. 1 root root 6 Aug 3 22:12 file2
-rw-r--r--. 1 root root 0 Aug 3 22:12 file3
将文件file1的时间记录改为9月17日19点30分
[root@localhost ~]# ls -l /root/file1
-rw-r--r--. 1 root root 5 Aug 4 2019 /root/file1
[root@localhost ~]# touch -c -t 09171930 /root/file1
[root@localhost ~]# ls -l /root/file1
-rw-r--r--. 1 root root 5 Sep 17 2019 /root/file1
时间格式是MMDDHHmm,如果要加上2019年年份
[root@localhost ~]# touch -c -t 09171930 /root/file1
mkdir:创建目录
命令语法:mkdir [选项] [目录]
选项 | 选项含有 |
---|---|
-m<权限模式> | 对新创建的目录设置权限,在没有-m选项时,默认权限是755 |
-v | 每次创建新目录都显示信息 |
-p | 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动创建那些尚不存在的目录,即以此可以建立多个目录 |
例子:创建目录newdir1 ,其默认权限为755
[root@localhost ~]# touch -c -t 09171930 /root/file1
[root@localhost ~]# ls -ld newdir1
drwxr-xr-x. 2 root root 6 Jun 22 22:27 newdir1
创建目录newdir2,其权限为777
[root@localhost ~]# mkdir -m 777 newdir2
[root@localhost ~]# ls -ld newdir2
drwxrwxrwx. 2 root root 6 Aug 3 22:39 newdir2
rmdir:删除空目录 命令语法:rmdir [选项] [目录]
选项 | 选项含义 |
---|---|
-p | 递归删除目录,当子目录删除后其父目录为空时,也一同被删除 |
-v | 输出处理的目录详情 |
例子:同时删除/root/newdir2和/root/newdir2/newdir3这两个空目录
[root@localhost ~]# mkdir /root/newdir2
[root@localhost ~]# mkdir /root newdir2/newdir3
[root@localhost ~]# rmdir -pv /root/newdir2/newdir3
rmdir: removing directory, ‘/root/newdir2/newdir3’
rmdir: removing directory, ‘/root/newdir2’
rmdir: removing directory, ‘/root’
rmdir: failed to remove directory ‘/root’: Device or resource busy
cp:复制文件的和目录
命令语法:cp [选项] [源文件|目录] [目标文件|目录]
选项 | 选项含义 |
---|---|
-a | 在复制目录时保留链接、文件属性、并递归地复制目录,等同于-dpr选项 |
-d | 复制时保留链接 |
-f | 在覆盖目标文件之前不给出提示信息要求用户确认 |
-i | 和-f选项相反看,在覆盖目标文件之前给出提示信息,要求用户确认 |
-p | 出复制源文件的内容外,还把其修改时间和访问权限也复制到新文件中 |
-l | 不做复制,只是链接文件 |
-r | 如果给出的源文件是一个目录文件,将递归复制该目录下所有的子目录和文件。此时目标必须为一个目录名 |
例子:将/etc/grub2.cfg文件复制到/root目录下,并改名为grub
[root@localhost ~]# cp /etc/grub2.cfg /root/grub
cp: overwrite ‘/root/grub’? y
[root@localhost ~]# ls
anaconda-ks.cfg grub newdir1
将/etc/grub2.cfg文件复制到/root目录下
[root@localhost ~]# cp /etc/grub2.cfg /root
[root@localhost ~]# ls
anaconda-ks.cfg grub grub2.cfg newdir1
[root@localhost ~]#
将/boot目录以及该目录中的所有文件和子目录都复制到/root目录中
[root@localhost ~]# cp -r /boot /root
[root@localhost ~]# ls -l /root
total 24
-rw-------. 1 root root 1260 Jun 9 14:21 anaconda-ks.cfg
dr-xr-xr-x. 5 root root 4096 Jun 22 23:21 boot
-rw-r--r--. 1 root root 4287 Jun 22 23:15 grub
-rw-r--r--. 1 root root 4287 Jun 22 23:18 grub2.cfg
drwxr-xr-x. 2 root root 6 Jun 22 22:27 newdir1
mv:文件和目录改名、移动文件和目录路径
命令语法:mv [选项] [源文件|目录] [目标文件|目录]
选项 | 选项含义 |
---|---|
-i | 覆盖前询问 |
-f | 覆盖前不询问 |
-n | 不覆盖已存在的文件 |
-u | 只有在源文件文件比目标文件新,或目标文件不存在时才进行移动 |
-T | 将目标文件视作普通文件处理 |
例子:将/root/pic目录下所以的后缀名为“.png”的文件移动到/usr/local/share/pic目录下
[root@localhost ~]# mv -f /root/pic/*.png /usr/local/share/pic
把/root/pic/kpic.png文件改名为/root/pic/life.png
[root@localhost ~]# mv /root/pic/kpic.png /root/pic/life.png
[root@localhost ~]# ls /root/pic
{kpic.png life.png
把/root/pic目录名称更改为/root/mypic
root@localhost ~]# mv /root/pic /root/mypic
[root@localhost ~]# ls /root
123.png} anaconda-ks.cfg boot grub grub2.cfg mypic newdir1
rm:删除文件或目录
命令语法:rm [选项] [文件|目录]
选项 | 选项含义 |
---|---|
-f | 强制删除。忽略不存在的文件,不给出提示信息 |
-r | 递归删除目录及其内容 |
-i | 在删除前需要确认 |
例子:删除当前目录下的file4文件
root@localhost ~]# rm file4
rm: remove regular empty file ‘file4’? y
[root@localhost ~]# ls
123.png} anaconda-ks.cfg boot grub grub2.cfg mypic newdir1
连同/root/ab/a文件和/root/ab目录一起删除
[root@localhost ~]# mkdir /root/ab
[root@localhost ~]# touch /root/ab/a
[root@localhost ~]# ls -l /root/ab/a
-rw-r--r--. 1 root root 0 Jun 22 23:51 /root/ab/a
[root@localhost ~]# rm -rf /root/ab
[root@localhost ~]# ls /root
123.png} anaconda-ks.cfg boot grub grub2.cfg mypic newdir1
wc:统计文件行数、单词数、字节数和字符数
命令语法:wc [选项] [文件]
选项 | 选项含义 |
---|---|
-l | 统计行数 |
-w | 统计单词数 |
-c | 统计字节数 |
-m | 统计字符数 |
-L | 统计文件中最长行的长度 |
例子:统计/root/aa文件的行数、单词数和字节数
[root@localhost ~]# wc -l /root/aa/ce.log
3 /root/aa/ce.log
统计/root目录下有多少子目录和文件
[root@localhost ~]# ls /root|wc -l
8
du:计算机文件或目录的容量
命令语法:du [选项]...[文件或目录]...
选项 | 选项含义 |
---|---|
-h | 人性化显示容量信息 |
-a | 查看所有目录以及文件的容量信息 |
-s | 仅显示总容量 |
-c | 显示总计信息 |
-l | 如果是硬连接,就多次计算其尺寸 |
-x | 跳过处于不同文件系统之上的目录 |
-S | 不包括子目录的占用量 |
-L | 找出任何符号链接指示的真正目的地 |
查看/root目录及子目录的容量信息
[root@localhost ~]# du /root
[root@localhost ~]# du -a /root
查看/root所占磁盘空间总和
[root@localhost ~]# du -sh /root
100M /root
以MB为单位显示/root目录磁盘占用量
[root@localhost ~]# du -sh /root
100M /root
选项 | 选项含义 |
---|---|
-h | 人性化显示容量信息 |
-a | 查看所有目录以及文件的容量信息 |
-s | 仅显示总容量 |
-c | 显示总计信息 |
-l | 如果是硬连接,就多次计算其尺寸 |
-x | 跳过处于不同文件系统之上的目录 |
-S | 不包括子目录的占用量 |
-L | 找出任何符号链接指示的真正目的地 |
查看/root目录及子目录的容量信息
[root@localhost ~]# du /root
[root@localhost ~]# du -a /root
查看/root所占磁盘空间总和
[root@localhost ~]# du -sh /root
100M /root
以MB为单位显示/root目录磁盘占用量
[root@localhost ~]# du -sh /root
100M /root
摘自:《Linux实用教程》人民邮电出版社出版发行 於岳编著