linuxshellfor目录
⑴ linux shell 运行后没有那个文件或目录,需要怎么改
看不出来有问题,你是不是输入位置变量错了
要不你是试试每个mkdir 后面加 -p
⑵ linux利用shell批量创建多级目录
mkdir 目录1/子目录1/...,如果要同时建立多个目录,同级目录间用空格分开即可,mkdir 目录1 目录2 目录3 ...
⑶ linux shell创建目录时提示没有那个文件或目录
mkdir -p $bak_path
mkdir命令默认不递归创建目录,意思就是如果要创建/a/b/c,如果b目录不存在,那么不会创建c,可以使用以上-p选项进行递归创建目录
⑷ linux shell中的遍历目录并删除目录下与目录名相同的文件
;do
if[-d/$i/$i];then
rm-rf/$i/$i
fi
done
代码如上,但如楼上所说,!慎用 !
⑸ linux shell命令在哪个文件夹
假设你的文件夹都在/path/to/dir下,并且该目录下的文件夹都是你要处理的这种日期格式的,简单脚本如下:
#!/bin/sh
for
fd
in
`find
/path/to/dir
-maxdepth
1
-mindepth
1
-type
d`
do
dn=${fd##*/}
if
[
$dn
!=
$2
]
&&
[
$dn
-le
`date
+%y%m%d
-d
-$1`
]
then
rm
-rf
$fd
fi
done
调用方式:脚本名
参数1
参数2
参数1
-
#day或#month或#year;#为数字
参数2
-
要保留的文件夹名
⑹ linux shell 命令怎么遍历目录
先设定实验环境:
# 造 5 个 目录,每个目录下,造 3 个 文件和两个子目录如下:
cd $HOME/tmp
for i in d1 d2 d3 d4 d5
do
mkdir -p $i
touch $i/1.txt $i/2.txt $i/3.txt
mkdir -p $i/tmp1 $i/tmp2
done
# 检验测试环境:
$ ls -lR d1
total 0
-rw-r--r-- 1 wenlee comm 0 Dec 22 10:35 1.txt
-rw-r--r-- 1 wenlee comm 0 Dec 22 10:35 2.txt
-rw-r--r-- 1 wenlee comm 0 Dec 22 10:35 3.txt
drwxr-sr-x 2 wenlee comm 256 Dec 22 10:35 tmp1/
drwxr-sr-x 2 wenlee comm 256 Dec 22 10:35 tmp2/
# 利用下列脚本来实现你要做的:
cd $HOME/tmp
for i in */1.txt
do
echo "Found $i, save $i and remove everything else under $(dirname $i)/"
save_this_file=$(basename $i)
curr_dir=$(dirname $i)
# 把这个1.txt暂时存到/tmp里面去,为了避免已经有同样的档案名称在/tmp,加上$$ (i.e. PID)
mv $i /tmp/${save_this_file}.$$
rm -rf $curr_dir
mkdir -p $curr_dir
mv /tmp/${save_this_file}.$$ $curr_dir
done
# 屏幕执行输出如下:
Found d1/1.txt, save d1/1.txt and remove everything else under d1/
Found d2/1.txt, save d2/1.txt and remove everything else under d2/
Found d3/1.txt, save d3/1.txt and remove everything else under d3/
Found d4/1.txt, save d4/1.txt and remove everything else under d4/
Found d5/1.txt, save d5/1.txt and remove everything else under d5/
# 复验实验环境:
$ ls -l d?/*
-rw-r--r-- 1 wenlee comm 0 Dec 22 10:35 d1/1.txt
-rw-r--r-- 1 wenlee comm 0 Dec 22 10:35 d2/1.txt
-rw-r--r-- 1 wenlee comm 0 Dec 22 10:35 d3/1.txt
-rw-r--r-- 1 wenlee comm 0 Dec 22 10:35 d4/1.txt
-rw-r--r-- 1 wenlee comm 0 Dec 22 10:35 d5/1.txt
OK?
thanks!
⑺ 如何用shell获取linux目录下的文件名
获取所有常规文件的文件名并打印出来的脚本listfile.sh如下
#!/bin/bash
dir="/*"
dir=$1$dir
for f in $dir
do
if [ -f $f ]
then
echo $f
fi
done
使用方法:
$ listfile.sh PATH
原理:
PATH参数是路径,将路径后加上“/*”,代表该目录下的所有文件和目录名,利用for循环比较每个文件是否是常规文件( -f比较运算符),若if表达式为真则打印
举例:
ls -l
total 36
-rwxrwxr-x 1 lipeng lipeng 48 Nov 29 20:08 aaa.sh
drwxrwxr-x 2 lipeng lipeng 4096 May 4 2015 byteorder
drwxrwxr-x 8 lipeng lipeng 4096 May 3 2015 hello
-rwxrwxr-x 1 lipeng lipeng 122 Nov 29 20:16 listfile.sh
-rw-rw-r-- 1 lipeng lipeng 177 Aug 1 03:10 main.cpp
drwxrwxr-x 2 lipeng lipeng 4096 Sep 13 16:42 matrix
drwxrwxr-x 5 lipeng lipeng 4096 Apr 28 2015 modbus
drwxrwxr-x 2 lipeng lipeng 4096 Sep 13 10:10 shtest
drwxrwxr-x 2 lipeng lipeng 4096 Sep 16 18:21 test
$ ./listfile.sh .
./aaa.sh
./listfile.sh
./main.cpp
⑻ linux shell编程 对于家目录下的所有文件(目录除外) ,首先判断用户对该文件是否具
#!/usr/bin/bash
forfilein`ls`
do
if[-f$file]
then
if[!-w$file]
then
chmod+w$file
fi
fi
done
⑼ Linux Shell脚本攻略的目录
第1章 小试牛刀
1.1 简介
1.2 终端打印
1.2.1 实战演练
1.2.2 补充内容
1.3 玩转变量和环境变量
1.3.1 预备知识
1.3.2 实战演练
1.3.3 补充内容
1.4 通过shell进行数学运算
1.4.1 预备知识
1.4.2 实战演练
1.5 玩转文件描述符和重定向
1.5.1 预备知识
1.5.2 实战演练
1.5.3 补充内容
1.6 数组和关联数组
1.6.1 预备知识
1.6.2 实战演练
1.6.3 补充内容
1.7 使用别名
1.7.1 预备知识
1.7.2 实战演练
1.7.3 补充内容
1.8 获取终端信息
1.8.1 预备知识
1.8.2 实战演练
1.9 获取、设置日期和延时
1.9.1 预备知识
1.9.2 实战演练
1.9.3 补充内容
1.10 调试脚本
1.10.1 预备知识
1.10.2 实战演练
1.10.3 补充内容
1.11 函数和参数
1.11.1 实战演练
1.11.2 补充内容
1.12 读取命令序列输出
1.12.1 预备知识
1.12.2 实战演练
1.12.3 补充内容
1.13 以不按回车键的方式读取字符“n”
1.13.1 预备知识
1.13.2 实战演练
1.14 字段分隔符和迭代器
1.14.1 预备知识
1.14.2 实战演练
1.15 比较与测试
1.15.1 预备知识
1.15.2 实战演练
第2章 命令之乐
2.1 简介
2.2 用cat进行拼接
2.2.1 预备知识
2.2.2 实战演练
2.2.3 工作原理
2.2.4 补充内容
2.3 录制与回放终端会话
2.3.1 预备知识
2.3.2 实战演练
2.3.3 工作原理
2.4 文件查找与文件列表
2.4.1 预备知识
2.4.2 实战演练
2.4.3 补充内容
2.5 玩转xargs
2.5.1 预备知识
2.5.2 实战演练
2.5.3 工作原理
2.5.4 补充内容
2.6 用tr进行转换
2.6.1 预备知识
2.6.2 实战演练
2.6.3 工作原理
2.6.4 补充内容
2.7 校验和与核实
2.7.1 预备知识
2.7.2 实战演练
2.7.3 工作原理
2.7.4 补充内容
2.8 排序、单一与重复
2.8.1 预备知识
2.8.2 实战演练
2.8.3 工作原理
2.8.4 补充内容
2.9 临时文件命名与随机数
2.9.1 实战演练
2.9.2 工作原理
2.10 分割文件和数据
2.10.1 工作原理
2.10.2 补充内容
2.11 根据扩展名切分文件名
2.11.1 实战演练
2.11.2 工作原理
2.12 批量重命名和移动
2.12.1 预备知识
2.12.2 实战演练
2.12.3 工作原理
2.13 拼写检查与词典操作
2.13.1 实战演练
2.13.2 工作原理
2.14 交互输入自动化
2.14.1 预备知识
2.14.2 实战演练
2.14.3 工作原理
2.14.4 补充内容
第3章 以文件之名
3.1 简介
3.2 生成任意大小的文件
3.3 文本文件的交集与差集
3.3.1 预备知识
3.3.2 实战演练
3.4 查找并删除重复文件
3.4.1 预备知识
3.4.2 实战演练
3.4.3 工作原理
3.4.4 参考
3.5 创建长路径目录
3.5.1 预备知识
3.5.2 实战演练
3.6 文件权限、所有权和粘滞位
3.6.1 预备知识
3.6.2 实战演练
3.6.3 补充内容
3.7 创建不可修改文件
3.7.1 预备知识
3.7.2 实战演练
3.8 批量生成空白文件
3.8.1 预备知识
3.8.2 实战演练
3.9 查找符号链接及其指向目标
3.9.1 预备知识
3.9.2 实战演练
3.10 列举文件类型统计信息
3.10.1 预备知识
3.10.2 实战演练
3.10.3 工作原理
3.11 环回文件与挂载
3.11.1 预备知识
3.11.2 实战演练
3.11.3 补充内容
3.12 生成ISO文件及混合ISO
3.12.1 预备知识
3.12.2 实战演练
3.12.3 补充内容
3.13 查找文件差异并进行修补
3.13.1 实战演练
3.13.2 补充内容
3.14 head与tail——打印文件的前10行和后10行
3.15 只列出目录的其他方法
3.15.1 预备知识
3.15.2 实战演练
3.16 在命令行中用pushd和popd快速定位
3.16.1 预备知识
3.16.2 实战演练
3.16.3 补充内容
3.17 统计文件的行数、单词数和字符数
3.17.1 预备知识
3.17.2 实战演练
3.17.3 补充知识
3.18 打印目录树
3.18.1 预备知识
3.18.2 实战演练
3.18.3 补充内容
第4章 让文本飞
4.1 简介
4.2 正则表达式入门
4.2.1 预备知识
4.2.2 实战演练
4.2.3 工作原理
4.2.4 补充内容
4.3 用grep在文件中搜索文本
4.3.1 预备知识
4.3.2 实战演练
4.3.3 补充内容
4.4 用cut按列切分文件
4.4.1 预备知识
4.4.2 实战演练
4.4.3 补充内容
4.5 统计特定文件中的词频
4.5.1 预备知识
4.5.2 实战演练
4.5.3 工作原理
4.5.4 参考
4.6 sed入门
4.6.1 实战演练
4.6.2 补充内容
4.7 awk入门
4.7.1 实战演练
4.7.2 工作原理
4.7.3 补充内容
4.8 替换文本或文件中的字符串
4.8.1 预备知识
4.8.2 实战演练
4.8.3 补充内容
4.8.4 参考
4.9 压缩或解压缩JavaScript
4.9.1 预备知识
4.9.2 工作原理
4.9.3 工作原理
4.9.4 参考
4.10 对文件中的行、单词和字符进行迭代
4.10.1 预备知识
4.10.2 实战演练
4.10.3 工作原理
4.10.4 参考
4.11 按列合并文件
4.11.1 工作原理
4.11.2 参考
4.12 打印文件或行中的第n个单词或列
4.12.1 预备知识
4.12.2 实战演练
4.12.3 参考
4.13 打印不同行或样式之间的文本
4.13.1 预备知识
4.13.2 实战演练
4.13.3 参考
4.14 用脚本检验回文字符串
4.14.1 预备知识
4.14.2 工作原理
4.14.3 工作原理
4.14.4 补充内容
4.14.5 参考
4.15 以逆序形式打印行
4.15.1 预备知识
4.15.2 实战演练
4.15.3 工作原理
4.15.4 参考
4.16 解析文本中的电子邮件地址和URL
4.16.1 预备知识
4.16.2 实战演练
4.16.3 工作原理
4.16.4 参考
4.17 打印文件中某个样式之前或之后的n行
4.17.1 预备知识
4.17.2 实战演练
4.17.3 参考
4.18 在文件中移除包含某个单词的句子
4.18.1 预备知识
4.18.2 实战演练
4.18.3 工作原理
4.18.4 参考
4.19 用awk实现head、tail和tac
4.19.1 预备知识
4.19.2 实战演练
4.19.3 工作原理
4.19.4 参考
4.20 文本切片与参数操作
4.20.1 实战演练
4.20.2 参考
第5章 一团乱麻?没这回事
5.1 入门
5.2 网站下载
5.2.1 预备知识
5.2.2 实战演练
5.2.3 补充内容
5.3 以格式化纯文本形式下载网页
5.4 cURL入门
5.4.1 预备知识
5.4.2 实战演练
5.4.3 补充内容
5.4.4 参考
5.5 从命令行访问Gmail
5.5.1 实战演练
5.5.2 工作原理
5.5.3 参考
5.6 解析网站数据
5.6.1 实战演练
5.6.2 工作原理
5.6.3 参考
5.7 制作图片抓取器及下载工具
5.7.1 实战演练
5.7.2 工作原理
5.7.3 参考
5.8 网页相册生成器
5.8.1 预备知识
5.8.2 实战演练
5.8.3 工作原理
5.8.4 参考
5.9 Twitter命令行客户端
5.9.1 预备知识
5.9.2 实战演练
5.9.3 工作原理
5.9.4 参考
5.10 基于Web后端的定义查询工具
5.10.1 预备知识
5.10.2 实战演练
5.10.3 工作原理
5.10.4 参考
5.11 查找网站中的无效链接
5.11.1 预备知识
5.11.2 实战演练
5.11.3 工作原理
5.11.4 参考
5.12 跟踪网站变更
5.12.1 预备知识
5.12.2 实战演练
5.12.3 工作原理
5.12.4 参考
5.13 以POST方式发送网页并读取响应
5.13.1 预备知识
5.13.2 实战演练
5.13.3 补充内容
5.13.4 参考
第6章 B计划
6.1 简介
6.2 用tar归档
6.2.1 预备知识
6.2.2 实战演练
6.2.3 补充知识
6.2.4 参考
6.3 用cpio归档
6.4 用gunzip或gzip压缩
6.4.1 实战演练
6.4.2 补充内容
6.4.3 参考
6.5 用bunzip或bzip压缩
6.5.1 实战演练
6.5.2 补充内容
6.5.3 参考
6.6 用lzma压缩
6.6.1 实战演练
6.6.2 补充内容
6.6.3 参考
6.7 用zip归档和压缩
6.8 超高压缩率的squashfs文件系统
6.8.1 预备知识
6.8.2 实战演练
6.8.3 补充内容
6.9 加密工具与散列
6.10 用raync备份系统快照
6.10.1 实战演练
6.10.2 补充内容
6.11 用Git备份版本控制
6.11.1 预备知识
6.11.2 实战演练
6.12 用dd克隆磁盘
6.12.1 预备知识
6.12.2 实战演练
6.12.3 补充内容
6.12.4 参考
第7章 无网不利
7.1 简介
7.2 联网知识入门
7.2.1 新手上路
7.2.2 实战演练
7.2.3 补充内容
7.2.4 参考
7.3 使用ping
7.3.1 实战演练
7.3.2 补充内容
7.4 列出网络上所有的活动主机
7.4.1 新手上路
7.4.2 实战演练
7.4.3 工作原理
7.4.4 补充内容
7.4.5 参考
7.5 传输文件
7.5.1 新手上路
7.5.2 实战演练
7.5.3 补充内容
7.5.4 参考
7.6 用脚本设置以太网与无线LAN
7.6.1 新手上路
7.6.2 实战演练
7.6.3 工作原理
7.6.4 参考
7.7 用SSH实现无密码自动登录
7.8 用SSH在远程主机上运行命令
7.8.1 新手上路
7.8.2 实战演练
7.8.3 补充内容
7.8.4 参考
7.9 在本地挂载点上挂载远程驱动器
7.9.1 新手上路
7.9.2 实战演练
7.9.3 参考
7.10 在网络上发送多播式窗口消息
7.10.1 新手上路
7.10.2 实战演练
7.10.3 工作原理
7.10.4 参考
7.11 网络流量与端口分析
7.11.1 新手上路
7.11.2 实战演练
7.11.3 补充内容
第8章 当个好管家
8.1 简介
8.2 统计磁盘的使用情况
8.2.1 新手上路
8.2.2 实战演练
8.2.3 补充内容
8.3 计算命令执行时间
8.4 与当前登录用户、启动日志及启动故障的相关信息
8.4.1 新手上路
8.4.2 实战演练
8.5 打印出10条最常使用的命令
8.5.1 新手上路
8.5.2 实战演练
8.5.3 工作原理
8.6 列出1小时内占用CPU最多的10个进程
8.6.1 新手上路
8.6.2 实战演练
8.6.3 工作原理
8.6.4 参考
8.7 用watch监视命令输出
8.7.1 实战演练
8.7.2 补充内容
8.8 对文件及目录访问进行记录
8.8.1 新手上路
8.8.2 实战演练
8.8.3 工作原理
8.9 用logrotate管理日志文件
8.9.1 新手上路
8.9.2 实战演练
8.10 用syslog记录日志
8.10.1 新手上路
8.10.2 实战演练
8.10.3 参考
8.11 通过监视用户登录找出入侵者
8.11.1 新手上路
8.11.2 实战演练
8.11.3 工作原理
8.12 监视远程磁盘的健康情况
8.12.1 新手上路
8.12.2 实战演练
8.12.3 工作原理
8.12.4 参考
8.13 找出系统中用户的活动时段
8.13.1 新手上路
8.13.2 实战演练
8.13.3 工作原理
第9章 管理重任
9.1 简介
9.2 收集进程信息
9.2.1 新手上路
9.2.2 实战演练
9.2.3 补充内容
9.2.4 参考
9.3 杀死进程以及发送或响应信号
9.3.1 新手上路
9.3.2 实战演练
9.3.3 补充内容
9.4 which、whereis、file、whatis与平均负载
9.5 向用户终端发送消息
9.5.1 新手上路
9.5.2 实战演练
9.5.3 工作原理
9.6 收集系统信息
9.7 用/proc收集信息
9.8 用cron进行调度
9.8.1 新手上路
9.8.2 实战演练
9.8.3 补充内容
9.9 从Bash中读写MySQL数据库
9.9.1 新手上路
9.9.2 实战演练
9.9.3 工作原理
9.10 用户管理脚本
9.10.1 实战演练
9.10.2 工作原理
9.11 图像文件的批量缩放及格式转换
9.11.1 新手上路
9.11.2 实战演练
9.11.3 工作原理
9.11.4 参考
⑽ linux shell 打开执行目录
可以在shell中定义变量,然后使用变量,实现高效的跳转到对应目录,免去了输入较长的地址。
比如我装的LAMP环境,每次跑起环境都挺麻烦的。具体命令如下:
cd /opt/lamppsudo ./manager.run Linux命令需求可查询“Linux命令大全”。