Linux目录及文件属性实践讲解

本文详细介绍了在Linux环境下,如何高效地使用各种命令进行文件管理、进程监控、系统配置及日志分析。从过滤目录、返回根目录、查看最新文件到创建软链接,再到日志实时监控与系统启动流程解析,提供了丰富的实战案例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值