我有一个目录,其中包含多个带有 git 存储库的子目录。我想添加desktop.ini
到这些子目录中的所有.gitignore
文件。
我知道我可以做到echo "desktop.ini" | tee -a .gitignore
,但它不能递归地工作。
我有一个目录,其中包含多个带有 git 存储库的子目录。我想添加desktop.ini
到这些子目录中的所有.gitignore
文件。
我知道我可以做到echo "desktop.ini" | tee -a .gitignore
,但它不能递归地工作。
我使用tee
如下:
some commands | tee -a >(command1 >> file) >(command2 >> file) >(command3 >> file)
如何将 command2 的执行延迟到 command1 结束,对于 command3 和 command2 也是如此?我试过wait
这样使用,但没有用:
some commands | tee -a >(command1 >> file) >(wait command2 >> file) >(wait command3 >> file)
脚本的输入文件作为参数从命令行传递。我希望将来自 tee 的日志文件保存在与输入文件相同的目录中:
假设输入文件位于“data/temp/inputfile.txt”
这是给我带来问题的部分:
{
INPUT1=$1
#Save each subdirectory as an element of the array
bkpIFS="$IFS"
IFS='/' read -r -a inputstring <<< $INPUT1
IFS="$bkpIFS"
#Get number of levels
PATHLENGTH=${#inputstring[@]}
if [ PATHLENGTH > 1 ]
then
#Delete the input file from path
FILEONLY=${inputstring[-1]}
INPUTFOLDER=${INPUT1/%$FILEONLY/}
#Name the log file
LOGFILE="arrays.log"
LOGPATH="$INPUTFOLDER$LOGFILE"
else
#If input file is at working directory
LOGPATH="arrays.log"
fi
# Here goes the main script...
printf "\nDone!\n"
} | tee $LOGPATH
我只是在工作目录中得到一个名为“1”的空文件。当然,如果我在最后一行写:
} | tee arrays.log
一切顺利,但我需要将每个日志文件放在与输入文件相同的位置。
出于某种原因,这适用于术语,而不适用于“运行”对话或 Openbox 快捷方式......
echo 200 | sudo tee /sys/class/backlight/intel_backlight/brightness