day 7 文件和目录相关基础命令

1. ls 显示目录下内容及属性信息

[root@zabbix-server ~]# ls
1  1.txt  anaconda-ks.cfg  zabbix

[root@zabbix-server ~]# ls -l
total 4
-rw-r--r--  1 root root    0 Mar 22 18:35 1
-rw-r--r--  1 root root    0 Mar 22 18:35 1.txt
-rw-------. 1 root root 1487 Oct  3 10:50 anaconda-ks.cfg
drwxr-xr-x  2 root root   50 Mar 15 13:49 zabbix
参数:
-l:以长格式显示当前目录下的内容(可简写成ll)

[root@zabbix-server ~]# ls -a
.   1.txt            .bash_logout   .cshrc          .tcshrc
..  anaconda-ks.cfg  .bash_profile  .mysql_history  .viminfo
1   .bash_history    .bashrc        .pki            zabbix
参数:
-a:显示所有文件,包括以点开头的隐藏文件

[root@zabbix-server ~]# ls -A
1                .bash_history  .bashrc         .pki      zabbix
1.txt            .bash_logout   .cshrc          .tcshrc
anaconda-ks.cfg  .bash_profile  .mysql_history  .viminfo
参数:
-A:显示所有文件,包括以点开头的隐藏文件,不包括.和..

[root@zabbix-server ~]# ll -d zabbix/
drwxr-xr-x 2 root root 50 Mar 15 13:49 zabbix/
参数:
-d:只显示目录本身

[root@zabbix-server ~]# ll -S
total 4
-rw-------. 1 root root 1487 Oct  3 10:50 anaconda-ks.cfg
drwxr-xr-x  2 root root   50 Mar 15 13:49 zabbix
-rw-r--r--  1 root root    0 Mar 22 18:35 1
-rw-r--r--  1 root root    0 Mar 22 18:35 1.txt
参数:
-S:文件从大到小显示

[root@zabbix-server ~]# ll -Sh
total 4.0K
-rw-------. 1 root root 1.5K Oct  3 10:50 anaconda-ks.cfg
drwxr-xr-x  2 root root   50 Mar 15 13:49 zabbix
-rw-r--r--  1 root root    0 Mar 22 18:35 1
-rw-r--r--  1 root root    0 Mar 22 18:35 1.txt
参数:
-h:以k或m显示文件大小

2. cp 复制文件和目录

[root@zabbix-server ~]# touch test.txt
[root@zabbix-server ~]# cp test.txt /tmp/
[root@zabbix-server ~]# ls /tmp/
1.txt
systemd-private-9a8b058127c345c28d144be1bfc41bd1-httpd.service-mnGcZM
systemd-private-9a8b058127c345c28d144be1bfc41bd1-mariadb.service-rlg81J
test.txt
vmware-root_6181-1991517207

[root@zabbix-server ~]# cp -r a.txt/ /tmp/
[root@zabbix-server ~]# ls /tmp/
a.txt
参数:
-r:以递归的形式复制目录

参数:
-p:保持文件属性

参数:
-a:保持文件属性,和链接。该参数包含了-r -d(保持链接) -p

强制覆盖原有文件或目录
/cp 
命令全路径也可以
/usr/bin/cp

查询命令路径
which

3. alias 查看或者设置名别

[root@zabbix-server ~]# alias 
alias cp='cp -i'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'

alias rm='echo 不允许使用rm,谢谢'

4. unalias 取消别名

unalias 命令  取消对应的命令的别名

5. rm 删除文件或目录

常用参数:
-f:强制删除
-r:递归删除目录和文件

扩展:如何防止rm误删除数据

(1)放弃使用rm,用mv或find代替
(2)不删除,mv到/tmp目录下,定期删除
(3)先备份,后删除
(4)不要在rm -fr 绝对路径,建议rm -rf 相对路径
(5)为rm设置别名,时刻提醒自己

6. mv 移动目录或文件

强制覆盖,忽略提示
/mv 

7. echo 输出和打印

建议:没有特殊需求,使用echo时,在后面的命令上使用双引号是标准用法。

常用参数:
-n:不换行输出
-e:支持转义字符(有特殊功能的字符)
       \t:表示一个tab键空格
       \n:回车换行

 例子:
[root@zabbix-server ~]# echo ABC
ABC

[root@zabbix-server ~]# echo -n aaa;echo bbb
aaabbb
[root@zabbix-server ~]# echo -n aaa
aaa[root@zabbix-server ~]# 

[root@zabbix-server ~]# echo -e "aaa\tAAA"  #这里的\t表示的是一个tab空格
aaa AAA
[root@zabbix-server ~]#

打印变量
[root@zabbix-server ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

你可能感兴趣的:(day 7 文件和目录相关基础命令)