如何在Bash中使用命令行参数作为文件路径并检查文件是否存在? 我有一个简单的Bash脚本test.sh #!/bin/bash
set -e
echo "arg1=$1"
if [ ! -f "$1" ]
then
echo "File $1 does not exist."
exit 1
fi
echo "File exists!" 在同一个目录中,我有一个包含stuff.txt的data文件夹。 如果我运行./test.sh data/stuff.txt,我会看到预期的输出: arg1=data/stuf
我对bash很陌生,而且我无法在终端上使用bash来禁止文件并使用管道命令。
这就是我在终端命令行上尝试过的。
$ cat data | readlooptest
然而,当我使用管道时,我总是收到这条消息。
-bash: readlooptest: command not found
我有一个名为readlooptest的脚本和一个数据文件。
读环测试的脚本内容
#!/bin/bash
read myLine
sum=0
for i in $myLine
do
sum=`expr $sum + $i`
done
echo "sum is: $sum"
数据文件内容如下
我有一个bash脚本来自动化我做的一些事情。bash调用2个python脚本,如果我正常运行bash脚本,一切都会运行,没有任何错误。我设置了一个cron作业来实现自动化,当我检查日志时,我注意到python脚本根本不运行。它给了我以下错误。
python: can't open file 'movefiles.py': [Errno 2] No such file or directory
python: can't open file 'create_log_shimmer.py': [Errno 2] No such file or dir
假设我们有一个空文件夹,在其中创建以下Bash脚本:
#!/bin/bash
while true; do
inotifywait -r -e modify,move,create,delete $(dirname $0)
if [ -f 'asdf.txt' ]; then
echo "YES!"
else
echo "NO!"
fi
# Do something that takes some time...
sleep 0.1
done
基本上,它等待修改/移
我是Ubuntu的超级新手,基本上需要一个Python包的Ubuntu。我想在比如说e:/username/folder1/folder2/python.py中运行一个Python文件。我在网上尝试了每一种方法,唯一的回答是bash: cd./e: No such file or directory。我不确定这是因为bash窗口还是虚拟环境。
当我在Windows上使用bash,ls时,它是VIRTUALENV_DIR。cd,上面写着/home/username。cd ..等会稍微改变目录,但不会改变另一个驱动器,也不会改变我希望它找到的文件夹。
我有两个目录与文件,一个是“源”,另一个“目的地”。我希望有一个在“源”中检查文件的脚本。如果文件名和大小与“目的”匹配,则删除“源”处的文件。最好用bash。
用大块头来比较好吗?
已编写了以下内容,但未打印文件。
#!/bin/bash
for file in $*; do
echo "$file"
# get size of regular files
[ -f "$file" ] && ls -l "$file"
done
几天前,我就开始学习如何在shell中编写脚本。如何使脚本thaht获得两个参数(文件名和某个目录),如果参数不好,我想发出错误警报,如果它们是正确的,我希望在给定目录中复制文件。到目前为止我做了这个:
#!/bin/bash
if [ -d $1 ] ; then
???
done
else
echo $1 NOT DIRECTORY
exit 1
fi
另外,我做了一个检查文件的部分。怎么把这些放在一起?
#!/bin/bash
if [ $# -ne 1 ]
then
echo "Use- $0 file"
exit 1
fi
if [ -f $1 ]
the
我们有一个运行两个程序的RHEL Linux服务器,它们的备份被复制到另一个运行Ubuntu Linux的服务器上。在cron作业中运行了一个"cleanup“脚本,该脚本应该删除这些超过10天的备份,但它不起作用。事实上,我无法让它工作,甚至手动运行它。脚本如下-
#!/bin/bash
# bash shell script to cleanup jira backup files
# The script will remove files that are 10 days or older
#
# Remove jira backup files
for FILE in `f