1、如何过滤出已知当前目录test中的所有一级目录(提示:不包含test目录下面目录的子目录及隐藏目录,即只能是一级目录)?
分析:
1)根据颜色区分文件和目录;
2)ls -l 结果中开头为d的就是目录;
3)通过给目录加标识,然后通过过滤标识,过滤出目录;
4)通过find直接查找指定类型的文件。
方法一:
[root@jackroo test]# ls -l|grep ^dr
drwxr-xr-x 3 root root 4096 Oct 5 06:13 a
drwxr-xr-x 2 root root 4096 Oct 5 06:13 test1
drwxr-xr-x 2 root root 4096 Oct 5 06:13 test2
方法二:
[root@jackroo test]# ls -lF|grep \/$
drwxr-xr-x 3 root root 4096 Oct 5 06:13 a/
drwxr-xr-x 2 root root 4096 Oct 5 06:13 test1/
drwxr-xr-x 2 root root 4096 Oct 5 06:13 test2/
方法三:
[root@jackroo test]# find . -maxdepth 1 -type d ! -name "."
./a
./test1
./test2
方法四:
[root@jackroo test]# tree -Ld 1
.
├── a
├── test1
└── test2
方法五:
[root@jackroo test]# ls -l|sed -n /^d/p
drwxr-xr-x 3 root root 4096 Oct 5 06:13 a
drwxr-xr-x 2 root root 4096 Oct 5 06:13 test1
drwxr-xr-x 2 root root 4096 Oct 5 06:13 test2
方法六:
[root@jackroo test]# ls -l|awk /^d/
drwxr-xr-x 3 root root 4096 Oct 5 06:13 a
drwxr-xr-x 2 root root 4096 Oct 5 06:13 test1
drwxr-xr-x 2 root root 4096 Oct 5 06:13 test2
2、假如当前目录是根目录,因需要你进入到了/tmp目录下进行了操作,如何返回到根目录。
[root@jackroo test]# env|grep -i oldpwd
OLDPWD=/opt/data/biji
cd /
cd -
3、一个目录中有很多文件(ls查看时有很多屏),想最快速度查看最近更新的文件。如何看?
ls -lrt /etc #按时间倒序
[root@jackroo test]# grep www --color=auto test2.txt #颜色过滤
www.baidu.com
4、在配置apache时,执行了./configure --prefix -/application/apache2.2.17来编译apche,在make install 完成后,希望用户的访问路径更简单,需要给/application/apache2.2.17目录做一个软连接/application/apache,使得内部人员或者管理人员通过/application/apache就可以访问到apache的安装目录/application/apache2.2.17下的内容,请给出实现的命令。
ln -s /opt/data/biji/test/application/apache2.2.17 /application/apache
5、已知apache服务的访问日志按天记录在服务器本地目录/app/logs下,由于磁盘空间紧张,现在要求只能保留最近7天访问日志,请问如何解决?
find . -type f -mtime +7 |xargs rm -f
6、调试系统服务时,希望能实时查看系统日志/var/log/messages的更新,如何做?
[root@jackroo test]# tail -f /var/log/messages
Oct 5 06:04:24 localhost kernel: microcode: CPU0 sig=0x906ea, pf=0x2, revision=0x0
Oct 5 06:04:24 localhost kernel: platform microcode: firmware: requesting intel-ucode/06-9e-0a
Oct 5 06:04:24 localhost kernel: Microcode Update Driver: v2.00 <tigran@aivazian.fsnet.co.uk>, Peter Oruba
Oct 5 06:04:24 localhost kernel: EXT4-fs (sda1): mounted filesystem with ordered data mode. Opts:
7、打印配置文件nginx.conf内容的行号及内容,该如何做?
1)nl nginx.conf
2)cat -n nginx.conf #主要用法
3)less -N nginx.conf
4)vi 文件,然后执行 :set nu #主要用法
5)grep -n . nginx.conf
8、装完系统后,希望让网络文件共享服务NFS,仅在3级别上开机自启动,如何做?
[root@jackroo biji]# chkconfig --level 245 nfs off
[root@jackroo biji]# chkconfig --list nfs
sshd 0:off 1:off 2:off 3:on 4:off 5:off 6:off
9、Linux系统运行级别一般为0-6,请分别写出每个级别的含义。
0 关机模式
1 单用户模式
2 无NFS的多用户模式
3 文本模式
4 无用
5 图形化
6 重启模式 init 6
runlevel #查看运行级别
init 3 #切换运行级别
10、请口头描述Linux系统的开机到登陆界面的启动过程。
1)开机BIOS自检;
2)MBR引导;
3)grub引导菜单;
4)加载内核Kernel;
5)启动init进程;
6)读取inittab文件,执行rc_sysinit,rc等脚本;
7)启动mingetty进程,进入系统登陆界面。
11、/etc/目录为linux系统的默认的配置文件及服务启动命令的目录
a.请用tar打包整个目录;
b.请用tar打包整个目录,但需要排除/etc/services文件。
c.请把a点命令的压缩包,解压到/tmp指定的目录下。
a. tar zcvf /tmp/etc.tar.gz /etc
b. tar zcvf /tmp/etc.tar.gz --exclude=/etc/services /etc #-X将不需要打包的放在一个文件中,然后排除文件即可。
c. tar xvf /tmp/etc.tar.gz
12、已知如下命令及结果:
[root@jackroo data]# echo "I am boy,myqq is 9900790">>boy.txt
[root@jackroo data]# ls
a.txt biji boy.txt oldboy.txt test.txt
[root@jackroo data]# cat boy.txt
I am boy,myqq is 990079
现在需要从文件中过滤出“boy"和”9900790“字符串,请给出命令。
[root@jackroo data]# awk -F '[ ,]' '{print $3 " "$6}' boy.txt #指定了空格和逗号两个分割符
boy 9900790
13、如何查看/etc/services文件有多少行?
所有查行号的都可以类似2)
1)wc -L 直接查看文件行数
[root@jackroo data]# wc -l /etc/services
10774 /etc/services
2)cat -n file |tail -1
[root@jackroo data]# cat -n /etc/services |tail -1
10774 iqobject 48619/udp # iqobject
3)sed -n '$=' /etc/services
4)[root@jackroo data]# awk '{print NR}' /etc/services |tail -1
10774
14、查看进程数。
[root@jackroo data]# ps -ef|grep syslog|wc -l
2
15、过滤出/etc/services 文件包含3306或1521两数字行的内容。
[root@jackroo data]# egrep "3306|1521" /etc/services
mysql 3306/tcp # MySQL
mysql 3306/udp # MySQL
ncube-lm 1521/tcp # nCube License Manager
ncube-lm 1521/udp # nCube License Manager