Questions tagged «bash»

与其他Bourne / POSIX shell相对,GNU的Bourne Again SHell特有的问题。对于一般关于Unix shell的问题,请改用/ shell标记。

6
使用bash从变量中删除特定字符
我想解析一个变量(在我的情况下,它是开发套件的版本)以使其.免于dot()。如果为version='2.3.3',则所需的输出为233。 我尝试如下进行操作,但是.必须替换为另一个给我的字符2_3_3。如果tr . ''可以的话,那会很好。 1 VERSION='2.3.3' 2 echo "2.3.3" | tr . _

2
shellshock(CVE-2014-6271 / 7169)漏洞是什么时候引入的,什么补丁可以完全解决该问题?
有关该错误的一些上下文:CVE-2014-6271 Bash不仅支持将Shell变量导出,而且还通过过程环境将Shell函数导出到其他bash实例(间接)到子进程。当前的bash版本使用以函数名称命名的环境变量,以及在变量值中以“(){”开头的函数定义,以在环境中传播函数定义。发生此漏洞是因为bash在处理函数定义后不会停止;它会继续按照函数定义来解析和执行shell命令。例如,环境变量设置为 VAR=() { ignored; }; /bin/id 将环境导入到bash进程时将执行/ bin / id。 资料来源:http : //seclists.org/oss-sec/2014/q3/650 该错误是什么时候引入的,什么可以完全修复该补丁?(请参阅CVE-2014-7169) 除了CVE(最初)(3. {0..2}和4. {0..3})中提到的易受攻击的版本还有哪些? 越野车源代码是否已在其他项目中重用? 需要其他信息。 相关:env x ='(){:;};是什么?命令” bash做,为什么它不安全?

1
什么时候需要双引号?
过去的建议是,将涉及a的任何表达式都用双引号括起来$VARIABLE,至少如果一个人希望它被shell解释为一个单独的项目,否则,内容中的任何空格$VARIABLE都会抛弃shell。 但是,据我了解,在最新版本的Shell中,不再总是需要使用双引号(至少出于上述目的)。例如,在bash: % FOO='bar baz' % [ $FOO = 'bar baz' ] && echo OK bash: [: too many arguments % [[ $FOO = 'bar baz' ]] && echo OK OK % touch 'bar baz' % ls $FOO ls: cannot access bar: No such file or directory ls: cannot access …

30
bash shell中的快速目录导航
我想经常在完全不相关的路径(例如/Project/Warnest/docs/和)之间切换~/Dropbox/Projects/ds/test/。 但是我不想一直打cd /[full-path]/。是否有任何快捷命令可以切换到以前使用的目录? 我能想到的一种解决方案是为我bash .profile的常用目录添加环境变量,并cd使用这些变量向它们添加环境变量。 但是还有其他解决方案吗?


4
如何在命令行(bash和zsh)中向后删除单词?
如何在命令行中向后删除单词?我确实习惯于一些编辑人员使用Ctrl+ 删除最后一个“单词” Backspace,我也希望在命令行中使用该功能。 目前,我正在使用Bash,尽管我可以向后跳一个单词,然后向前删除一个单词,但我宁愿将其作为快速键,也可以将事件作为Ctrl+ Backspace。 如何做到这一点?


5
我可以同时将输出重定向到日志文件和后台进程吗?
我可以同时将输出重定向到日志文件和后台进程吗? 换句话说,我可以做这样的事情吗? nohup java -jar myProgram.jar 2>&1 > output.log & 或者,这不是合法命令吗?或者,是否需要手动将其移至后台,如下所示: java -jar myProgram.jar 2>$1 > output.log jobs [CTRL-Z] bg 1
116 bash  shell  shell-script 

3
如何在远程计算机上执行本地脚本并包含参数?
我编写了一个在本地执行时可以正常运行的脚本: ./sysMole -time Aug 18 18 参数“ -time”,“ Aug”,“ 18”和“ 18”已成功传递到脚本。 现在,该脚本旨在在远程计算机上执行,但是可以从本地计算机上的本地目录执行。例: ssh root@remoteServer "bash -s" < /var/www/html/ops1/sysMole 那也很好。但是,当我尝试包括上述论点(时间为8月18日18)时,就会出现问题,例如: ssh root@remoteServer "bash -s" < /var/www/html/ops1/sysMole -time Aug 18 18 运行该脚本后,出现以下错误: bash: cannot set terminal process group (-1): Invalid argument bash: no job control in this shell 请告诉我我在做什么错,这非常令人沮丧。

5
hash命令的目的是什么?
如果运行,hash它将显示自从上次重置哈希(hash -r)以来运行的所有命令的路径。 [root@c04c ~]# hash hash: hash table empty [root@c04c ~]# whoami root [root@c04c ~]# hash hits command 1 /usr/bin/whoami [root@c04c ~]# whoami root [root@c04c ~]# hash hits command 2 /usr/bin/whoami 根据手册页,哈希的目的是: / usr / bin / hash实用程序会影响当前shell环境记住所找到的实用程序位置的方式。根据指定的参数,它将实用程序位置添加到其记忆位置列表中,或者清除列表中的内容。如果未指定任何参数,它将报告列表的内容。该-r选项使外壳程序忘记所有记住的位置。 作为内置到shell中的实用程序不会通过哈希报告。 除了查看输入命令的次数外,看不到的实用程序hash。 它甚至出现在thegeekstuff.com的前15个有用命令中 有什么hash用处?
116 bash  history 

3
linux +添加X天日期并获取新的虚拟日期
我有Linux(RH 5.3)机器 我需要添加/计算10天加上日期,以便获得新的日期(失效日期) 例如 # date Sun Sep 11 07:59:16 IST 2012 所以我需要 NEW_expration_DATE = Sun Sep 21 07:59:16 IST 2012 请建议如何计算新的到期日期(使用bash,ksh或操纵日期命令?)
115 linux  bash  shell-script  date 


8
将命名参数传递给Shell脚本
有没有简单的方法可以将命名参数传递(接收)到Shell脚本? 例如, my_script -p_out '/some/path' -arg_1 '5' 并在内部my_script.sh将其接收为: # I believe this notation does not work, but is there anything close to it? p_out=$ARGUMENTS['p_out'] arg1=$ARGUMENTS['arg_1'] printf "The Argument p_out is %s" "$p_out" printf "The Argument arg_1 is %s" "$arg1" 在Bash或Zsh中可能吗?

3
将命令行参数传递给bash脚本
我是bash脚本编程的新手。 我想实现一个bash脚本'deploymLog',该脚本接受一个字符串参数(名称)作为输入。 [root@localhost Desktop]# ./deploymLog.sh name 这里我想通过命令行传递字符串参数(名称) 首先,我需要将当前时间戳以及此输入字符串附加Logone.txt到以下格式的日志文件中: [name]=[System time timestamp1] 怎么可能?
114 bash  shell  scripting 


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.