小编Mik*_*ike的帖子

当前会话的 bash 历史记录

也许我忽略了一些东西,但是有没有办法获取您正在使用的当前会话的当前 bash 历史记录

如果我跑

ssh host
$ pwd
$ ls
$ cd /tmp
Run Code Online (Sandbox Code Playgroud)

我只想看那 3 个命令,别无其他

bash command-history

17
推荐指数
1
解决办法
1万
查看次数

用一个 ; 或 && 与 $@

我正在尝试用 cron 包装器做一些事情,我的 cron 看起来像

* * * * * root /usr/bin/wrapper cd /tmp/ && ls 
Run Code Online (Sandbox Code Playgroud)

然后包装看起来像

#!/bin/bash 

"$@"
Run Code Online (Sandbox Code Playgroud)

当我运行它时,我无法让分号或 && 像我希望的那样工作。

[root@domain.net ~/test]# pwd
/root/test
[root@domain.net ~/test]# ls
test.sh
[root@domain.net ~/test]# ./test.sh cd /tmp && ls
test.sh
Run Code Online (Sandbox Code Playgroud)

所以在这种情况下,它进入 tmp 然后 weapper 脚本退出..它在我的 cwd 中运行 ls。

如果我在命令周围添加 '' 我得到

[root@domain.net ~/test]# ./test.sh 'cd /tmp && ls'
./test.sh: line 3: cd /tmp && ls: No such file or directory
Run Code Online (Sandbox Code Playgroud)

我猜用“$@”它正试图将单引号添加到正在运行的命令中

我支持我可以去掉 "$@" 之前的单引号,但我希望不要这样做.. 任何提示或者这甚至可以在 bash 中解决?

bash shell-script

3
推荐指数
1
解决办法
178
查看次数

标签 统计

bash ×2

command-history ×1

shell-script ×1