1.显示/var目录下所有以l开头,以一个小写字母结尾,且中间出现至少一位数字的文件或目录
[root@localhost var]# mkdir l009z
[root@localhost var]# touch l999a.txt
[root@localhost var]# ll
total 8
drwxr-xr-x. 2 root root 6 Apr 11 2018 adm
drwxr-xr-x. 5 root root 44 Aug 3 17:03 cache
drwxr-xr-x. 2 root root 6 Nov 5 2018 crash
drwxr-xr-x. 3 root root 34 Aug 3 17:03 db
drwxr-xr-x. 3 root root 18 Aug 3 17:03 empty
drwxr-xr-x. 2 root root 6 Apr 11 2018 games
drwxr-xr-x. 2 root root 6 Apr 11 2018 gopher
drwxr-xr-x. 3 root root 18 Aug 3 17:02 kerberos
drwxr-xr-x. 2 root root 6 Aug 7 14:28 l009z
-rw-r--r--. 1 root root 0 Aug 7 14:29 l999a.txt
drwxr-xr-x. 24 root root 4096 Aug 3 17:14 lib
drwxr-xr-x. 2 root root 6 Apr 11 2018 local
lrwxrwxrwx. 1 root root 11 Aug 3 17:02 lock -> ../run/lock
drwxr-xr-x. 6 root root 4096 Aug 4 03:21 log
lrwxrwxrwx. 1 root root 10 Aug 3 17:02 mail -> spool/mail
drwxr-xr-x. 2 root root 6 Apr 11 2018 nis
drwxr-xr-x. 2 root root 6 Apr 11 2018 opt
drwxr-xr-x. 2 root root 6 Apr 11 2018 preserve
lrwxrwxrwx. 1 root root 6 Aug 3 17:02 run -> ../run
drwxr-xr-x. 8 root root 87 Aug 3 17:03 spool
drwxrwxrwt. 3 root root 43 Aug 7 11:25 tmp
drwxr-xr-x. 2 root root 6 Apr 11 2018 yp
[root@localhost var]# ls -d /var/l*[[:digit:]]*[[:lower:]]
/var/l009z /var/l999a.txt
2.显示/etc目录下以任意一位数字开头,且以非数字结尾的文件或目录
[root@localhost etc]# touch 999z.txt
[root@localhost etc]# mkdir 999z
[root@localhost etc]# ls [[:digit:]]*[^[:digit:]]
999z.txt
999z:
3.显示/etc/目录下以非字母开头,后面跟了一个字母及其它任意长度任意字符的文件或目录
[root@localhost etc]# touch 9a9b.txt
[root@localhost etc]# mkdir 9a9b
[root@localhost etc]# ls [^[:alpha:]][[:alpha:]]*
9a9b.txt
9a9b:
4.显示/etc/目录下所有以rc开头,并后面是0-6之间的数字,其它为任意字符的文件或目录
[root@localhost etc]# ls rc[0-6]*
rc0.d:
K50netconsole K90network
rc1.d:
K50netconsole K90network
rc2.d:
K50netconsole S10network
rc3.d:
K50netconsole S10network
rc4.d:
K50netconsole S10network
rc5.d:
K50netconsole S10network
rc6.d:
K50netconsole K90network
5.显示/etc目录下,所有以.d结尾的文件或目录
[root@localhost etc]# ls *.d
bash_completion.d:
iprutils
binfmt.d:
chkconfig.d:
cron.d:
0hourly
depmod.d:
dist.conf
dracut.conf.d:
grub.d:
00_header 00_tuned 01_users 10_linux 20_linux_xen 20_ppc_terminfo 30_os-prober 40_custom 41_custom README
init.d:
functions netconsole network README
krb5.conf.d:
ld.so.conf.d:
kernel-3.10.0-957.el7.x86_64.conf mariadb-x86_64.conf
logrotate.d:
bootlog syslog wpa_supplicant yum
modprobe.d:
dccp-blacklist.conf firewalld-sysctls.conf tuned.conf
modules-load.d:
my.cnf.d:
mysql-clients.cnf
pam.d:
chfn crond login password-auth postlogin runuser smartcard-auth smtp.postfix sudo system-auth vlock
chsh fingerprint-auth other password-auth-ac postlogin-ac runuser-l smartcard-auth-ac sshd sudo-i system-auth-ac vmtoolsd
config-util fingerprint-auth-ac passwd polkit-1 remote screen smtp su su-l systemd-user
popt.d:
prelink.conf.d:
fipscheck.conf grub2.conf nss-softokn-prelink.conf
profile.d:
256term.csh colorgrep.csh colorls.csh csh.local lang.sh less.sh vim.csh which2.csh
256term.sh colorgrep.sh colorls.sh lang.csh less.csh sh.local vim.sh which2.sh
rc0.d:
K50netconsole K90network
rc1.d:
K50netconsole K90network
rc2.d:
K50netconsole S10network
rc3.d:
K50netconsole S10network
rc4.d:
K50netconsole S10network
rc5.d:
K50netconsole S10network
rc6.d:
K50netconsole K90network
rc.d:
init.d rc0.d rc1.d rc2.d rc3.d rc4.d rc5.d rc6.d rc.local
rsyslog.d:
listen.conf
rwtab.d:
logrotate
statetab.d:
sudoers.d:
sysctl.d:
99-sysctl.conf
tmpfiles.d:
xinetd.d:
yum.repos.d:
CentOS-Base.repo CentOS-CR.repo CentOS-Debuginfo.repo CentOS-fasttrack.repo CentOS-Media.repo CentOS-Sources.repo CentOS-Vault.repo
6.显示/etc目录下,所有.conf结尾,且以m,n,r,p开头的文件或目录
[root@localhost etc]# ls [m,n,r,p]*.conf
man_db.conf mke2fs.conf nsswitch.conf resolv.conf rsyslog.conf
7.只显示/root下的隐藏文件和目录
[root@localhost ~]# ls -d /root/.*
/root/. /root/.. /root/.bash_history /root/.bash_logout /root/.bash_profile /root/.bashrc /root/.cshrc /root/.lesshst /root/.tcshrc /root/.viminfo /root/.vimrc
8.只显示/etc下的非隐藏目录
[root@localhost etc]# ls /etc/[^.]*/ -d
/etc/9a9b/ /etc/cron.weekly/ /etc/gnupg/ /etc/modprobe.d/ /etc/polkit-1/ /etc/rc4.d/ /etc/ssh/ /etc/vmware-tools/
/etc/alternatives/ /etc/dbus-1/ /etc/groff/ /etc/modules-load.d/ /etc/popt.d/ /etc/rc5.d/ /etc/ssl/ /etc/wpa_supplicant/
/etc/audisp/ /etc/default/ /etc/grub.d/ /etc/my.cnf.d/ /etc/postfix/ /etc/rc6.d/ /etc/statetab.d/ /etc/X11/
/etc/audit/ /etc/depmod.d/ /etc/gss/ /etc/NetworkManager/ /etc/ppp/ /etc/rc.d/ /etc/sudoers.d/ /etc/xdg/
/etc/bash_completion.d/ /etc/dhcp/ /etc/init.d/ /etc/openldap/ /etc/prelink.conf.d/ /etc/rpm/ /etc/sysconfig/ /etc/xinetd.d/
/etc/binfmt.d/ /etc/dracut.conf.d/ /etc/iproute2/ /etc/opt/ /etc/profile.d/ /etc/rsyslog.d/ /etc/sysctl.d/ /etc/yum/
/etc/chkconfig.d/ /etc/egl/ /etc/kernel/ /etc/pam.d/ /etc/python/ /etc/rwtab.d/ /etc/systemd/ /etc/yum.repos.d/
/etc/cron.d/ /etc/firewalld/ /etc/krb5.conf.d/ /etc/pkcs11/ /etc/rc0.d/ /etc/sasl2/ /etc/terminfo/
/etc/cron.daily/ /etc/fonts/ /etc/ld.so.conf.d/ /etc/pki/ /etc/rc1.d/ /etc/security/ /etc/tmpfiles.d/
/etc/cron.hourly/ /etc/gcrypt/ /etc/libnl/ /etc/plymouth/ /etc/rc2.d/ /etc/selinux/ /etc/tuned/
/etc/cron.monthly/ /etc/glvnd/ /etc/logrotate.d/ /etc/pm/ /etc/rc3.d/ /etc/skel/ /etc/udev/
9.每天将/etc/目录下所有文件,备份到/data独立的子目录下,并要求子目录格式为 backupYYYY-mm-dd,备份过程可见
[root@localhost ~]# cp -av /etc /data/backup`date +%F`
[root@localhost ~]# ll /data/
total 16
drwxr-xr-x. 78 root root 8192 Aug 7 14:42 backup2020-08-07
-rw-r--r--. 1 root root 20 Aug 7 11:41 f1.txt
10.创建/data/rootdir目录,并复制/root下所有文件到该目录内,要求保留原有权限
[root@localhost ~]# ll /
total 16
lrwxrwxrwx. 1 root root 7 Aug 3 17:02 bin -> usr/bin
dr-xr-xr-x. 5 root root 4096 Aug 3 17:13 boot
drwxr-xr-x. 4 root root 59 Aug 7 15:03 data
drwxr-xr-x. 19 root root 3220 Aug 3 17:14 dev
drwxr-xr-x. 78 root root 8192 Aug 7 14:42 etc
drwxr-xr-x. 22 root root 273 Aug 6 17:39 home
lrwxrwxrwx. 1 root root 7 Aug 3 17:02 lib -> usr/lib
lrwxrwxrwx. 1 root root 9 Aug 3 17:02 lib64 -> usr/lib64
drwxr-xr-x. 2 root root 6 Apr 11 2018 media
drwxr-xr-x. 2 root root 6 Apr 11 2018 mnt
drwxr-xr-x. 2 root root 6 Apr 11 2018 opt
dr-xr-xr-x. 136 root root 0 Aug 3 17:14 proc
dr-xr-x---. 2 root root 196 Aug 7 14:22 root
drwxr-xr-x. 24 root root 660 Aug 7 11:30 run
lrwxrwxrwx. 1 root root 8 Aug 3 17:02 sbin -> usr/sbin
drwxr-xr-x. 2 root root 6 Apr 11 2018 srv
dr-xr-xr-x. 13 root root 0 Aug 3 17:14 sys
drwxrwxrwt. 8 root root 226 Aug 7 14:22 tmp
drwxr-xr-x. 13 root root 155 Aug 3 17:02 usr
drwxr-xr-x. 19 root root 267 Aug 7 14:38 var
[root@localhost ~]# ll -a
total 44
dr-xr-x---. 2 root root 196 Aug 7 14:22 .
dr-xr-xr-x. 18 root root 236 Aug 6 13:48 ..
-rw-r--r--. 1 root root 134 Aug 6 15:34 acl.txt
-rw-------. 1 root root 1689 Aug 3 17:13 anaconda-ks.cfg
-rw-------. 1 root root 1284 Aug 4 14:07 .bash_history
-rw-r--r--. 1 root root 18 Dec 29 2013 .bash_logout
-rw-r--r--. 1 root root 176 Dec 29 2013 .bash_profile
-rw-r--r--. 1 root root 176 Dec 29 2013 .bashrc
-rw-r--r--. 1 root root 100 Dec 29 2013 .cshrc
-rw-------. 1 root root 39 Aug 4 14:29 .lesshst
-rw-r--r--. 1 root root 129 Dec 29 2013 .tcshrc
-rw-------. 1 root root 3996 Aug 7 14:22 .viminfo
-rw-r--r--. 1 root root 550 Aug 7 13:56 .vimrc
[root@localhost ~]# cp -ap /root/ /data/rootdir/
[root@localhost ~]# ll /data/rootdir/
total 0
dr-xr-x---. 2 root root 196 Aug 7 14:22 root
[root@localhost ~]# ll -a /data/rootdir/root/
total 44
dr-xr-x---. 2 root root 196 Aug 7 14:22 .
drwxr-xr-x. 3 root root 18 Aug 7 15:10 ..
-rw-r--r--. 1 root root 134 Aug 6 15:34 acl.txt
-rw-------. 1 root root 1689 Aug 3 17:13 anaconda-ks.cfg
-rw-------. 1 root root 1284 Aug 4 14:07 .bash_history
-rw-r--r--. 1 root root 18 Dec 29 2013 .bash_logout
-rw-r--r--. 1 root root 176 Dec 29 2013 .bash_profile
-rw-r--r--. 1 root root 176 Dec 29 2013 .bashrc
-rw-r--r--. 1 root root 100 Dec 29 2013 .cshrc
-rw-------. 1 root root 39 Aug 4 14:29 .lesshst
-rw-r--r--. 1 root root 129 Dec 29 2013 .tcshrc
-rw-------. 1 root root 3996 Aug 7 14:22 .viminfo
-rw-r--r--. 1 root root 550 Aug 7 13:56 .vimrc
11.如何创建/testdir/dir1/x, /testdir/dir1/y, /testdir/dir1/x/a,/testdir/dir1/x/b, /testdir/dir1/y/a, /testdir/dir1/y/b
[root@localhost data]# mkdir -p /data/testdir/dir1/{x,y}/{a,b}
[root@localhost data]# tree testdir/
testdir/
└── dir1
├── x
│ ├── a
│ └── b
└── y
├── a
└── b
7 directories, 0 files
12.如何创建/testdir/dir2/x, /testdir/dir2/y, /testdir/dir2/x/a,/testdir/dir2/x/b
[root@localhost data]# mkdir -p /data/testdir/dir2/{x/{a,b},y}
[root@localhost data]# tree testdir/
testdir/
├── dir1
│ ├── x
│ │ ├── a
│ │ └── b
│ └── y
│ ├── a
│ └── b
└── dir2
├── x
│ ├── a
│ └── b
└── y
12 directories, 0 files
13.如何创建/testdir/dir3, /testdir/dir4, /testdir/dir5, /testdir/dir5/dir6,/testdir/dir5/dir7
[root@localhost data]# mkdir -p /data/testdir/dir{3,4,5/{6,7}}
[root@localhost data]# tree testdir/
testdir/
├── dir1
│ ├── x
│ │ ├── a
│ │ └── b
│ └── y
│ ├── a
│ └── b
├── dir2
│ ├── x
│ │ ├── a
│ │ └── b
│ └── y
├── dir3
├── dir4
└── dir5
├── 6
└── 7
17 directories, 0 files