已解决
【Linux】linux的shell脚本
来自网友在路上 176876提问 提问时间:2023-10-26 16:24:19阅读次数: 76
最佳答案 问答题库768位专家为你答疑解惑
文章目录
- 执行shell文件:
- 输出重定向
- 创建一个hello.sh文件:
- 执行:sh hello.sh param1 param2。
- 示例:随着日期变化,每天备份数据库,文件名为每天的日期。
第一行的
#!
是说明文件的类型的。
第一行的
/bin/bash
表明该文件是一个bash程序,需要bash程序来解释执行。
编辑内容中使用
#
号进行注释。
执行shell文件:
方法一:bash hello.sh
方法二:sh hello.sh (sh是指向bash的一个链接)
方法三:将文件修改为可执行的文件,然后运行它:
chmod a+x hello.sh
./hello.sh
输出重定向
ls > 1.txt
ls >> 1.txt
两个>表示不清除原来的内容,以追加的形式输出。
bash中将标准输出表示为1。
将标准错误输出表示为2。
find /home -name *.txt 2> err_log将错误写入到err_log中
find /home -name *.txt log 2>& 1 首先将错误写入到log中,
再将标准输出也写入
简写为 find /home -name *.txt >& log
shell中参数的传递使用$加数字。
注意$0是文件名字,其他变量从数字1开始。
创建一个hello.sh文件:
#!/bin/bash
echo “$0=” $0
echo “$1=” $1
echo ‘$2=’ $2
执行:sh hello.sh param1 param2。
结果显示:
hello.sh= hello.sh
param1= param1
$2= param2
(双引号还是会解析成变量值。)
示例:随着日期变化,每天备份数据库,文件名为每天的日期。
利用date指令获取所需的文件名:
#!/bin/bash#接收输入的文件名
read -p "请输入文件名:" input_filename#设置文件名,如果输入的有文件名,就使用,否则使用默认
filename=${input_filename:-"default_name"}#获取今天的日期
today_date=$(date +%Y%m%d)#创建文件
touch "${filename}_${today_date}.txt"
查看全文
99%的人还看了
相似问题
猜你感兴趣
版权申明
本文"【Linux】linux的shell脚本":http://eshow365.cn/6-25230-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!