如何用shell编程打印出目录下的所有文件内容?

如何用shell编程打印出目录下的所有文件内容?,第1张

1)看下面的脚本a1sh,假设要显示目录/home/user/tmp/下面的所有的文件和(子)目录的名字:\x0d\\x0d\$ cat a1sh\x0d\#!/bin/bash\x0d\\x0d\for file in /home/user/tmp/\x0d\do\x0d\ echo $file\x0d\done\x0d\\x0d\2)假设目录/home/user/tmp/下面的所有的文件和(子)目录如下:\x0d\\x0d\$ ls\x0d\1txt 2txt a1sh ash bsh email_back m1doc tmp\x0d\\x0d\3)运行脚本:\x0d\$ a1sh (或者/a1sh)\x0d\/home/user/tmp/1txt\x0d\/home/user/tmp/2txt\x0d\/home/user/tmp/a1sh\x0d\/home/user/tmp/ash\x0d\/home/user/tmp/bsh\x0d\/home/user/tmp/email_back\x0d\/home/user/tmp/m1doc\x0d\/home/user/tmp/tmp\x0d\\x0d\4)脚本a1sh的作用只是显示文件和子目录的列表,要显示文件的内容,脚本继续改造,内容如下,看脚本a2sh:\x0d\\x0d\$ cat a2sh\x0d\#!/bin/bash\x0d\\x0d\for file in /home/shiqingd/tmp/\x0d\do\x0d\ echo $file\x0d\ if [ -f $file ]; then\x0d\ cat $file\x0d\ fi\x0d\done\x0d\\x0d\脚本a2sh可以达到目的。

其实一秒可以生成几十个的
touch filenametxt
for name in {110000}txt
do
touch $name
done
for name in {110000}txt
这句话的大括号是说从1开始到10000生成一万个文件(txt),但都不占空间
这个参数能随便改

3# !/bin/bash
cd $1
ls –a|grep ‘dat’
ls –a|grep ‘log’
mkdir DONE/
for files in dat
do
mv $datfile ${datfile%dat}_donedat
cp -r ${datfile%dat}_donedat DONE/${datfile%dat}_donedat
done
for logfile in log
do
mv $ logfile ${ logfile %log}_donelog
cp –r ${ logfile %log}_donelog DONE/${datfile%dat}_donelog
done

文件系统 *** 作命令
1。猫:可以显示文件的内容(更经常同用),或将多个文件合并成一个文件。
2 chgrp命令:用于改变文件或目录所属的用户组,参数命令更改文件的属组,文件名支持通配符空格分隔的列表,如果用户是不是车主该文件的,你不能改变所属组的文件。
3 CHMOD:对文件或目录,有两种方式命令更改访问权限:一种是用图解法,另一种是数字设定法。
4乔敦:用于指定用户或组特定所有者。用户可以设置一个用户名或用户ID,组可能是一个组名或组ID。具体的文件是文件权限空格分隔的列表是可以改变的,文件名支持通配符。
五明确:清除终端屏幕。
6的cmp:用来比较两个文件的大小。
7 CP:(复印件),你可以在同一个功能非常强大的文件或目录复制到另一个目录中,就如同DOS复制命令。当使用cp命令,你只需要指定源文件名或目标目录。
8剪:用来清除文件的部分内容。
9差异:找出两个文件之间的差异。
10杜:显示盘的剩余空间的大小。
11文件:用来显示文件的类型。
12发现:用于搜索目录中的文件并执行指定的 *** 作。
13头:看到文件的内容只有前几行,而不必浏览整个文件。
14号法律公告:您可以创建文档之间的链接,事实上,在参观了它的别名指定的文件。
15减:用法和比较类似,您可以查看文件的内容超过一屏,不同的是少,除了按下空格键可显示的文件,你可以使用箭头键滚动浏览该文件,浏览到结束,只要少提示“:”请按Q键即可。
16定位:可用于查找文件,而且比find命令的搜索速度更快。
17 LS(列表):用于显示当前目录中的文件和子目录列表。
18的mkdir(创建目录):创建子目录。
19多个:不止一个屏幕用于显示一个文件的内容,以避免文件的内容显示瞬间消失后,你可以使用更多的命令,这样的文件全屏显示时,暂停,继续显示下一次你按任意键屏幕内容。
20 rmkdir(删除目录):删除“空”的子目录或无用的目录文件。
21 MV(移动):文件和目录可以被移动到另一个位置,或者改变文件和目录的名称。
22微微:指定可编辑的文本。
23 PWD(打印工作目录):显示目录中的用户的当前位置。
24 RM:删除系统中过时或无用的文件,可以删除目录或目录本身的文件,链接文件,原文件保持不变。
25排序:文本文件自动分类。
26统计:为状态显示文件或文件系统。
27字符串:显示字符串的文件进行打印。
28尾:输出文件的结尾。
29摸:改变文件的时间戳。
30的umask:用来启动bash shell的。
31的uniq:删除重复的机密文件的文本行。
32六:启动vi文本编辑器。
33 WC:显示文本行字的组合文件中的字节,数。
34 whereis:查找在原程序中的特定目录,二进制程序或用户手册和其他文件。
35人:如果用户想了解某个命令的详细信息,那么你可以使用此命令。
36日:复制文件。
37,DF:查看文件系统的磁盘空间使用情况。
38 edquoat:设置用户和磁盘空间的限制,即Windows系统的配额组。
39 fdformat:格式化的软盘。
40 FDISK:在Linux下进行磁盘分区。
41的mkfs:建立一个Linux的文件系统。
42 mkswap命令:创建一个Linux swap分区。
43安装:安装文件系统。
44名额:限和显示用户可用的磁盘空间。
45 swapon命令,使用swapoff:启用或禁用设备交换页面和文档。
46使用quotaon,quotaoff:启用或禁用配额限制。
47的umount:取消文件系统设备。
系统管理命令
1手指:查询用户信息,也可以查看默认的用户环境。
2 FTP:用户界面标准的文件传输协议在网络上传输文件是最简单有效的方法。
3主机:DNS查询。
4主机:用于显示或设置系统的主机名。
5 ifconfig命令:用于配置网络接口。 (您可以启用或禁用使用向下或向上的参数网络接口)
6,邮件:发送和接收邮件。
7的netstat:显示网络连接,路由表和网络接口的信息,用户可以知道,网络连接正在运行。
8平:该命令用于在网络上连接到计算机,并检查其他计算机。
9远程登录:远程登录命令,该命令与telnet命令很相似,该系统允许用户启动远程交互式会话的用户。
10 RCP:RCP(远程文件复制)命令是一个远程文件拷贝命令,它被用来计算机之间复制文件,有两种格式,用于移动到复制文件的文件格式,另一种用到一个文件或目录复制到另一个文件目录。
11路:该命令用于显示或设置IP路由表。
12 tcpdump的:这个命令是用来测试网络流量。
13快讯:此命令可用于网络用户及时对话事宜,但信息必须被添加到每个系统的/ etc / hosts文件来识别对方当事人。
14的Telnet:该命令用于登录远程计算机通过网络,为本地计算机的 *** 作。
15,墙面:墙面(全部写入)命令可以用来将消息发送到本机的用户登陆。发送邮件时,您可以输入直接发送消息,也可以将文档作为邮件发送。
16的wget:此命令用于从互联网上下载的环境下Linux的文件,>在shell程序中,最常用的文件描述符FD(file descriptor)大概有三个:

0: 标准输入(stdin)
1: 标准输出(stdout)
2: 标准错误(stderr)

example:
如果当前目录下只有一个文件:a

(ps: 1>fout 缩写: >fout ,通常 1> 省略成 > )

下面,认识下 1>&2 2>&1
如果这样写: 1>2 ,意味着将标准输出重定向到一个名叫2的文件中
而 1>&2 代表着将标准输出重定向到标准错误中

但不能把顺序写反了

所以,像 1>&2 中的 & ,可以理解成一个转义符

总结:

& 是一个描述符,如果 1 或 2 前不加 & ,会被当成一个普通文件。
> 是 1> 的简写。
1>&2 :标准输出重定向到标准错误。
2>&1 :标准错误重定向到标准输出。
&> file 和 >& file 意思是把标准输出和标准错误输出都重定向到文件file中

#!/bin/bash
filename=$1
while read line
do
   echo "$line"
done <$filename

这个绝对符合你的要求。

将以上代码存为脚本文件showFilesh

赋予脚本可执行权限:chmod +x showFilesh

执行脚本:/showFilesh filetxt


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/13400306.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-29
下一篇 2023-07-29

发表评论

登录后才能评论

评论列表(0条)

保存