【Linux-在gnome-terminal -x中运行bash函数】教程文章相关的互联网学习教程文章

linux – 你能用bash / sh脚本写一个简单的每周提醒吗?【代码】

我需要提醒自己参加每周一次的会议.我公司的标准提醒工具的问题在于,当它在wine下运行时,它会弹出一个屏幕外的虚拟桌面. 我觉得有趣的是看看我是否可以提出一个“at”命令弹出一个提醒窗口,然后在接下来的一周重新提交. 我知道我可以使用cron或一些闹钟应用程序,但这引起了我的好奇心. 单发版本将是:echo "DISPLAY=$DISPLAY zenity --title='Weekly Meeting' --text='Time for the weekly meeting' --info" | at 0955 NEXT Monday...

linux – 是否可以在make文件中使用从bash脚本导出的变量?【代码】

我相信可以在make文件中使用环境变量的值. 因为我是新手,所以很难搞清楚. 我尝试了以下,但没有成功. 在BashTEST_VAR=1export TEST_VAR在make文件中ifeq ($(TEST_VAR),1)COMMON_OBJECTS += Test1.oendif但它没有编译Test1.cpp. 我的make文件只包含这些行,我将COMMON_OBJECTS添加到另一个文件中定义的另一个变量. 如果我评论这个ifeq条件Test1正在编译.但我正在寻找一种方法来有条件地做到这一点. 我在这里缺少什么?解...

linux – bash – 排除“for file in $(find …)”中的目录【代码】

我必须做一个脚本,它将所有* .txt文件从主目录复制到此脚本的第一个参数(${1})中指定的新创建的目录. 如果备份目录已存在,我想跳过它.我正在尝试排除查找中的-prune,但它对我不起作用.最后我在循环中做了if语句,这也行不通,我不知道为什么……谢谢你的帮助!! 这是我的代码:#!/bin/bashmkdir ${1}for file in $(find ~/ -name *.txt)doif [ ! -f ~/${1}/$file ]thencp -i -v $file -t ~/${1}fidone解决方法:您在代码中有错误,您正在...

linux – 如何在bash shell中运行MATLAB真的很安静?【代码】

参见英文答案 > suppress start message of Matlab 5个我在Makefile中使用MATLAB将一些数据转换为eps.但是它在整个地方展示了它的标志. 例如,当我输入bash时:matlab -nojvm -nodisplay -nosplash -r "display('derp');exit"我明白了:< M A T L A B (R) >Copyright 1984-2012 The MathWorks, Inc.R2012a (7.14.0.739) 64-bit (glnxa64)February 9, 2012To get started, type one of these: he...

linux – 使用Bash读取文件然后用“反对文件本身”行“grep”【代码】

我正在尝试使用Linux Bash读取文件,然后使用“grep”对文件本身运行该行.这似乎对我不起作用……#!/bin/bashpath=$1 while read line dovar1=$(grep $line $path)echo $?exit done < $path$?返回1.这里发生了什么?解决方法:使用grep -F(固定字符串)代替:var1=$(grep -F "$line" "$path")

linux – bash脚本从上次失败的地方执行【代码】

任何人都可以告诉我如何编写一个脚本来执行它上次停止的位置.我的bash脚本包含24个顺序执行的脚本文件.但是,如果任何一个脚本失败,下次当我执行脚本文件时,我不希望脚本从脚本1开始,而应该从上次失败的地方开始.请指教.解决方法:一种粗暴的方式:#!/bin/bash # Needs bash 4 or later, for `;&` to work [ "$1" = "--frest_start" ] && rm statusfiletouch statusfile read status < statusfile [ "$status" = "" ] && status=0cas...

Linux bash: scp: command not found的问题记录

1,scp报错 [root@localhost soft]# scpjdk-7u55-linux-x64.tar.gz 192.168.121.246:/soft/ root@192.168.121.246s password: bash: scp: command not found lost connection [root@localhost soft]# 2,调试-v [root@localhost soft]# scp -vjdk-7u55-linux-x64.tar.gz 192.168.121.246:/soft/ Executing: program /usr/bin/ssh host192.168.121.246, user (unspecified), command scp -v -t /soft/ OpenSSH_5.3p1, OpenSSL 1....

linux – bash – 仅在存在相应的文本文件时打开图像【代码】

当我尝试仅根据存储在.txt文件中的信息打开图像时,我遇到了Bash中的一个问题.我试图按大小或高度对多个图像进行排序,并按排序顺序显示图像,但如果文件夹中没有带有相同名称的.txt文件的.jpg,则不应处理它. 我已经完成了我的情况的排序部分,并且我想弄清楚我将如何仅打开带有.txt文件的.jpg扩展名的图像. 我认为一个解决方案看起来像我将每个.jpg的名称(没有扩展名)放在一个列表中,然后处理列表并运行如下: [if -f $filename.txt];...

linux – 如何在使用GNU Parallel的Bash脚本中避免SIGCHLD错误【代码】

我正在循环中运行script.sh.该脚本包含并行wget命令.我收到以下错误:Signal SIGCHLD received, but no signal handler set.循环看起来像这样:for i in {1..5}; do /script.sh; done导致错误的行看起来像这样(省略选项和设置):cat file.txt | parallel -j15 wget研究: 我不是GNU Parallel的专家,但是除非我得到上面的错误,否则大多数时候脚本似乎都能正常工作.在查看SIGCHLD时,我了解到并行运行可以创建“僵尸进程”,有时我们需...

linux – Bash中的自定义路径完成【代码】

我想为自己的文件系统编写一个bash_completion脚本.我有客户端程序,它向一些数据库发送查询. 例:my_prog --ls db_name:/foo/bar/此命令写入db_name:/ foo / bar文件夹中的stdout文件列表. 我想为此启用自动完成功能.因此,当我按Tab键时,它会显示选项列表.my_prog --ls db_name:/foo/bar/<tab>但在这种情况下,当我按Tab键并且有单个选项时它会替换当前输入的路径,所以我得到了这个:$my_prog --ls db_name:/foo/bar/<tab> $my_pro...

linux – Bash陷阱:如何获取具有非零状态的子进程的行号【代码】

对于Bash计划:1 #!/bin/bash2 3 trapinfo()4 {5 echo "=== Trap Info: Status=$? LINENO=$@ A=$A"6 }7 8 main()9 { 10 trap 'trapinfo $LINENO -- ${BASH_LINENO[*]}' ERR 11 12 set -e 13 set -E 14 set -o errtrace 15 shopt -s extdebug 16 17 local -g A=1 18 19 # false # If uncommented, LINENO would be 19 20 (exit 73) # LINENO is 9. How can I get 20...

linux – 自定义bash完成的提示【代码】

我正在开发一个自定义bash完成命令来从调度系统(LSF,PBS,SLURM)捕获作业ID.我已经掌握了基本功能,但是现在我想用运行zsh时看到的“提示”来扩展它. 例如,当我在下面的grep示例中按TAB时,我得到:grep -<TAB>--after-context -A -- specify lines of trailing context--basic-regexp -G -- use basic regular expression--before-context -B -- specify lines of leading...

linux – bash,ksh,tcsh和zsh之间的区别【代码】

考虑以下shell代码:unset foo echo "${foo-'}'}"结果取决于使用的shell: > bash:’}’> ksh:”}> tcsh:失踪}.> zsh:”} 根据POSIX标准,哪些shell表现出来?解决方法:符合POSIX的shell应该输出:''}

linux – 如何使用.bash_profile而不是当前用户执行命令作为另一个用户?【代码】

我想在启动脚本(rc.local)中以非root用户身份运行命令.我想要执行的命令实际上是非root用户的.bash_profile中的别名.我试过用su - myuser -c aliased_cmd但这不起作用.如果我只是输入su - myuser # wait for login... aliased_cmd它工作正常,但显然这在实际脚本中是不合适的.当然我可以将我想要使用的别名和函数复制到实际的rc.local文件中,但这看起来有点傻……也许有一个我不知道的选项或者使用sudo的方法这个?解决方法:在获取配...

linux – 压缩Bash脚本来解析文件【代码】

我有这个bash脚本来填充一个文本文件,我想让它更简单,更简单,使它更有效率,有没有人有任何想法,我怎么能这样做?$vifunction displayHelp {echo "Use '-f' to set the file to be used "echo "Use '-s' to sort the data bya column"echo "Use '-m' to output the rows which match this expression" }function displayColumn {columnnumber="$2"awk '{print $'$columnnumber'}' $1}function displayParameter { parameter="$3"c...