实战培训初级班第二次课——我的课前答案 过滤出一个目录中的所有目录(不包含下面的子目录

1、过滤出一个目录中的所有目录(不包含下面的子目录)?

解答:ls -l |grep "^d"

find . ! -name "." -type d -prune

ls -F | grep /$  ## $表示以/结尾的

-F, –classify             加上文件类型的指示符号 (*/=@| 其中一个)

不加任何标识符,表示它是一般文件。

* 表示可执行文件

/ 表示目录

@ 表示soft link文件

= 表示socket文件

| 表示管道文件。


如果使用 find . -type d 命令,则会将目录下面的子目录也一并显示出来

-prune
使用这一选项可以使find命令不在当前指定的目录中查找,如果同时使用-depth选项,那么-prune将被find命令忽略。


2、假如当前目录是

[root@oldboy oldboy]# pwd

/oldboy

现在因为需要切到/tmp目录下进行操作

[root@oldboy oldboy]# cd /tmp

[root@oldboy tmp]# pwd

/tmp

操作完毕,希望快速返回上次进入的目录,即/oldboy,该如何做(不能用cd /oldboy命令)

解答:cd -

[root@oldboy oldboy]# env|grep -i OLDPWD #→此时系统环境变量的变化 
OLDPWD=/tmp 
特别提示:环境变量OLDPWD 始终记录当前路径的前一个路径,而执行cd -正可以进入到这个变量中保留
的前一个目录。 

3:一个目录中有很多文件(ls查看时好多屏),想最快速度查看到最近更新的文件。如何看?

解答:ls -t

4.在配置apache时 执行了./configure --prefix=/application/apache2.2.17 来编译apche,在make install完成后,希望用户的访问路径更简单,需要给/application/apache2.2.17目录做一个链接,/application/apache使得管理人员通过/application/apache就可以访问到apache安装目录,请给出命令。

解答: ln -s /application/apache2.2.17  /application/apache

5.已知apache服务的访问日志按天记录在服务器本地目录/app/logs下,由于空间紧张,现在需要,访问日志仅保留最近7天日志即可!请问如何解决? 请给出解决办法或配置或处理命令。(提示:可以从apache服务配置上着手,也可以从生成出来的日志上着手。)

解答:暂时不会

6.调试系统服务时,希望能时时查看系统日志/var/log/message的更新,如何做?

解答:tail -f /var/log/message

7.打印配置文件nginx.conf内容的行号及内容,该如何做?

解答:cat -n nginx.conf 

解答:这里提供 3 个方法 
nl nginx.conf  
cat -n nginx.conf  
less -N nginx.conf 

8.使得网络文件共享服务NFS,仅在3级别上开机自启动,该如何做?

解答:暂时不会。别人提供的:chkconfig --level 2345 on NFS


[root@oldboy oldboy]# chkconfig nfs off 
[root@oldboy oldboy]# chkconfig --level 3 nfs on 
[root@oldboy oldboy]# chkconfig --list|grep nfs|grep -v nfslock 

nfs             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 X11

6 重起(reboot)

10.linux系统中查看中文乱码,请问如何解决乱码问题?

解答:不会。别人提供的:LANG=zh_CN.UTF8


[root@oldboy oldboy]# echo 'LANG="ZH_CN.GB18030" '>/etc/sysconfig/i18n #→写到配置文件里 
[root@oldboy oldboy]# source /etc/sysconfig/i18n #→使配置生效 
[root@oldboy oldboy]# echo $LANG 
ZH_CN.GB18030 

11.如何优化linux系统(不许查资料,可以不说太具体)?

解答:负载均衡、I/O、逻辑卷管理、自动化配置、自动预警调整、自动化、标准化、智能化。

12./etc/目录为linux系统的默认的配置文件及服务启动命令的目录

  a.请用tar打包/etc整个目录(打包及压缩)

  b.请用tar打包/etc整个目录(打包及压缩,但需要排除/etc/services文件)

  c.请把a命令的压缩包,解压到/tmp指定目录下(最好只用tar命令实现)




解答:a: tar -cvzf temp.tar.gz /etc*

b:记不得了,盼解答。

[root@oldboy oldboy]# tar zcf etc.tar.gz /etc --exclude=etc/services 
tar: Removing leading `/' from member names 
tar: Removing leading `/' from hard link targets 
tar zxf etc.tar.gz -C /tmp/ 

c:tar -xzvf temp.tar.gz -C /tmp

13.已知如下命令及结果:

[oldboy@test ~]$ echo "I am oldboy,myqq is 31333741">>oldboy.txt

[oldboy@test ~]$ cat oldboy.txt

I am oldboy,myqq is 31333741

现在需要 取文件中的oldboy,31333741字符串,请给出命令.

(提示:可以用但不限于cut命令实现)

解答: cat oldboy.txt |awk '{print $3,$6}' 

 cat oldboy.txt|cut -d " " -f3,6 

或cut -c 6-11,20- oldboy.txt 

echo "I am oldboy,myqq is 31333741" | sed s/,/\ / | awk '{print $3 " " $6}'
  输出这个文件                 过滤,为空格   过滤第三个和第六个


格式 :cut [options] file1 file2

选项:

     -c list  指定剪切字符数

     -f field 指定剪切域数

     -d 指定与空格 /tab 不同的分隔符

     -c 指定剪切的字符范围,字符,如 -c 1,5,7  第 1,5,6,7 字符    -c 1-50 前 50 个字符

     -f  指定剪切的域范围   -f 1,5 剪切 1,5 两个域    -f 1,10-12 剪切 1,10,11,12 四个域


14.如何查看/etc/services文件的行数?

解答:wc /etc/services |awk '{print $1}'

[root@oldboy oldboy]# wc -l /etc/services  
9249 /etc/services 
提示:可以显示文件字符数,单词数如下: 
[root@oldboy oldboy]# wc -c /etc/services  
362031 /etc/services 
9249 /etc/services 
[root@oldboy oldboy]# wc -w /etc/services  
47825 /etc/services 

15.过滤出/etc/services 包含3306和1521的行的内容。

解答:cat /etc/services |grep "3306" |grep "1521" 比较笨,不知道能有cat /etc/services |grep "3306&&tcp" ????连在一起的处理方法不???


grep -E "3306|1521" /etc/services #→双引号 

或egrep "3306|1521" /etc/services 



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值