草庐IT

bash_profile

全部标签

linux - 在 bash 脚本中实现一个简单版本的查找

我的任务要求我创建一个可以采用这些参数的find版本:-name(名称的处理模式)-type(f和d)-print-exec(并且能够处理{},尽管如果存在exec,您可以假设它将始终是最后一个论点,不需要以分号结束。它还声明“谓词可以按任何顺序出现,并且隐式短路AND在一起。不要处理-o(OR)。”我也不允许在我的脚本中使用find。因此,示例输入如下所示:myfind~/dirtocheck/-name'*.o'-typef-print-exec/bin/mv{}~/.TRASH\;我有几个关于如何完成所有这些的问题。首先,我想知道如何使用递归来沿着路径导航。这是我的函数的伪代码版

linux - 在 bash 脚本中实现一个简单版本的查找

我的任务要求我创建一个可以采用这些参数的find版本:-name(名称的处理模式)-type(f和d)-print-exec(并且能够处理{},尽管如果存在exec,您可以假设它将始终是最后一个论点,不需要以分号结束。它还声明“谓词可以按任何顺序出现,并且隐式短路AND在一起。不要处理-o(OR)。”我也不允许在我的脚本中使用find。因此,示例输入如下所示:myfind~/dirtocheck/-name'*.o'-typef-print-exec/bin/mv{}~/.TRASH\;我有几个关于如何完成所有这些的问题。首先,我想知道如何使用递归来沿着路径导航。这是我的函数的伪代码版

linux - 在 xargs 中带有反引号的 Bash 命令

echo$TMPLIST|xargs-I{}-n1-P$MAXJOBScurl-o{}_$DATESTRING.dump`get-temp-url--location{}`$TMPLIST有一个我想要处理的位置列表。我正在尝试运行与上面类似的东西,但反引号内的括号不会展开。我做错了什么? 最佳答案 在这个命令中...echo$TMPLIST|xargs-I{}-n1-P$MAXJOBScurl-o{}_$DATESTRING.dump\`get-temp-url--location{}`...反向符号由shell解释;xargs永远

linux - 在 xargs 中带有反引号的 Bash 命令

echo$TMPLIST|xargs-I{}-n1-P$MAXJOBScurl-o{}_$DATESTRING.dump`get-temp-url--location{}`$TMPLIST有一个我想要处理的位置列表。我正在尝试运行与上面类似的东西,但反引号内的括号不会展开。我做错了什么? 最佳答案 在这个命令中...echo$TMPLIST|xargs-I{}-n1-P$MAXJOBScurl-o{}_$DATESTRING.dump\`get-temp-url--location{}`...反向符号由shell解释;xargs永远

linux - Linux Bash shell 脚本中的 IO 重定向不重新创建移动/删除的文件?

我对Linux上的shell编程很陌生,在我的Linux实例中,我按照以下方式将程序的stdout和stderr重定向到两个文件并在后台运行它myprog>run.log2>>err.log&这很好用,我得到了我想要的行为现在有另一个后台进程监视run.log和err.log,如果日志文件增长超过特定阈值,则将它们移动到其他文件名。例如mverr.logerr[日期时间].log我的期望是,在这个文件移动发生后,err.log将被myprog输出重定向再次创建,新的输出将被写入该新文件。但是,在我的日志文件监视进程移动文件后,err.log或run.log再也不会创建,尽管myprog

linux - Linux Bash shell 脚本中的 IO 重定向不重新创建移动/删除的文件?

我对Linux上的shell编程很陌生,在我的Linux实例中,我按照以下方式将程序的stdout和stderr重定向到两个文件并在后台运行它myprog>run.log2>>err.log&这很好用,我得到了我想要的行为现在有另一个后台进程监视run.log和err.log,如果日志文件增长超过特定阈值,则将它们移动到其他文件名。例如mverr.logerr[日期时间].log我的期望是,在这个文件移动发生后,err.log将被myprog输出重定向再次创建,新的输出将被写入该新文件。但是,在我的日志文件监视进程移动文件后,err.log或run.log再也不会创建,尽管myprog

linux - 如何检测 bash shell 命令后跟逻辑 && AND 或 ||或者?

我喜欢为我使用的常用构建命令取一个简短的名称。我也喜欢他们在完成时notify-send我,这样我就可以在等待的同时处理多项任务,而不用看终端。现在,我希望命令在链接它们时不发出通知。例如aliasb='commandandparametersformybuild;notify-send'aliasb2='commandandparametersforasecondtypeofbuild;notifysend'$b//Iamnotifiedwhenitcompletes,justonce.$b&&b2//Today,Iamnotifiedtwice,whenbcompletesandw

linux - 如何检测 bash shell 命令后跟逻辑 && AND 或 ||或者?

我喜欢为我使用的常用构建命令取一个简短的名称。我也喜欢他们在完成时notify-send我,这样我就可以在等待的同时处理多项任务,而不用看终端。现在,我希望命令在链接它们时不发出通知。例如aliasb='commandandparametersformybuild;notify-send'aliasb2='commandandparametersforasecondtypeofbuild;notifysend'$b//Iamnotifiedwhenitcompletes,justonce.$b&&b2//Today,Iamnotifiedtwice,whenbcompletesandw

linux - 如何在使用 bash 更改文件名和扩展名的同时将多个文件移动到一个目录?

/opt/dir/ABC/中有多个名为allfile_123-abcallfile_123-defallfile_123-ghiallfile_123-xxx的文件。我需要将文件命名为new_name-abc.pgpnew_name-def.pgpnew_name-ghi.pgpnew_name-xxx.pgp然后移动到/usr/tst/outputforfilein/opt/dir/ABC/allfile_123*;domv$file/usr/tst/output/"$file.pgp";renameallfile_123new_name/usr/tst/output/*.pgp;d

linux - 如何在使用 bash 更改文件名和扩展名的同时将多个文件移动到一个目录?

/opt/dir/ABC/中有多个名为allfile_123-abcallfile_123-defallfile_123-ghiallfile_123-xxx的文件。我需要将文件命名为new_name-abc.pgpnew_name-def.pgpnew_name-ghi.pgpnew_name-xxx.pgp然后移动到/usr/tst/outputforfilein/opt/dir/ABC/allfile_123*;domv$file/usr/tst/output/"$file.pgp";renameallfile_123new_name/usr/tst/output/*.pgp;d