我想检查 bash 历史记录中的命令是在什么时间/日期执行的。这可能吗?
以下面的shell脚本为例:
#!/bin/bash
python do_this_first.py
python do_this_second.py
python do_this_last.py
Run Code Online (Sandbox Code Playgroud)
当我运行上面的时候,3个python脚本会并行运行吗?因为我希望 'do_this_second' 只在 'do_this_first' 完成后运行。
可能的重复:
在 OS X 和 Ubuntu 上实时观察文件系统
我正在寻找一种有效的方法来监视 OSX 中的本地目录,如果该目录中的任何文件已更改,请运行 bash 脚本将文件提交到 github。
有没有推荐的工具来监视目录中的文件更改,然后触发操作,即 bash 脚本?
我刚刚意识到我的系统上有一个文件;它通常列出:
$ ls -la T?S?ER.txt
-rw-r--r-- 1 user user 8 2013-04-11 18:07 T?S?ER.txt
$ cat T?S?ER.txt
testing
Run Code Online (Sandbox Code Playgroud)
...然而,它使一个软件崩溃,并出现与 UTF-8/Unicode 相关的错误。我真的很困惑,因为我不知道为什么这样的文件有问题;最后我记得检查lswith的输出hexdump:
$ ls T?S?ER.txt
T?S?ER.txt
$ ls T?S?ER.txt | hexdump -C
00000000 54 ce 95 53 d0 a2 45 52 2e 74 78 74 0a |T..S..ER.txt.|
0000000d
Run Code Online (Sandbox Code Playgroud)
...嗯,显然有一些字节之间/而不是一些字母,所以我猜这是一个 Unicode 编码问题。我可以尝试回显字节以查看打印的内容:
$ echo -e "\x54\xCE\x95\x53\xD0\xA2\x45\x52\x2E\x74\x78\x74"
T?S?ER.txt
Run Code Online (Sandbox Code Playgroud)
...但我仍然无法分辨这些是哪些 - 如果有 - Unicode 字符。
那么是否有一个命令行工具,我可以在终端上检查一个字符串,并获取有关它的字符的 Unicode 信息?
在我的 shell 中,l+tab完成如下:
wim@wim-zenbook:~$ l
Display all 135 possibilities? (y or n)
Run Code Online (Sandbox Code Playgroud)
有一个提示回答y或n哪个很烦人,它会翻页,--More--这也很烦人。我们怎样才能让它在没有唠叨的情况下只展示可能性?
在 Ubuntu 上使用 gnome-terminal。
我想知道这是否可能。
我想设置一些脚本或命令来打开 5 个选项卡,每个打开的选项卡都将指定自己的目录
都在同一个窗口
tab 1: open ~/folderA1
tab 2: open ~/folderA2
tab 3: open ~/folderA3
tab 4: open ~/folderA4
tab 5: open ~/folderA5
Run Code Online (Sandbox Code Playgroud)
这是在 Mac OS X 中的 iTerm2 上。
我知道我可以执行 CMD+T 之类的操作,然后使用cd ~/folderA1等等打开它们中的每一个,但是如果有我可以设置的命令或脚本,在执行后它们会立即完成所有这些操作,我很想知道如果有办法这样做。
在 os-x 终端中运行 python repl (2.7.10) 并退出后,终端不再回显输入,并且发生了一些其他奇怪的事情。如果我python再次运行and exit(),则终端似乎已恢复。我现在只是关闭选项卡并打开一个新选项卡,所以我还没有进行广泛的测试。
我想这与终端设置有关,但这是最近的事情,我没有改变任何我记得的东西。macports如果与某些控制台库的不匹配依赖项有关,则Python 与 一起安装。2.7.10是前段时间安装的,安装后没有出现这种情况。
指关节开裂并打开terminal
[~]: virtualenv-2.7 venv-test
[~]: source venv-test/bin/activate
[~]: python
>>> ^D>>> *(press ctrl-d, the 2nd >>> is strange)
[~]: *(type something like `ls-l`, nothing shows on console)
[~]: -bash: ls-l: command not found`
Run Code Online (Sandbox Code Playgroud)
此外,再次运行 python 并ctrl-d在此输出中得到结果:
>>> ^D (ctrl-d, then hit enter, doesn't exit)
>>> ^D (...)
>>> ^D (...)
>>> exit() (typing exit() quits the session)
>>> [~]:
Run Code Online (Sandbox Code Playgroud) 所以我卸载了cmake,并用更新的版本重新安装了它,路径是正确的,文件在那里,但是每当我尝试运行cmake时,bash都会回显 -bash: /usr/bin/cmake: No such file or directory
pi@raspberrypi /usr/local/bin $ dir
cmake cpack ctest indiecity
pi@raspberrypi /usr/local/bin $ export | grep PATH
declare -x PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games"
Run Code Online (Sandbox Code Playgroud) 我刚刚开始测试“Windows 上的 Ubuntu 上的 Bash”,我喜欢它!
只是,问题是我需要使用 VPN 才能访问我们的后端和开发人员服务器。当尝试(例如)使用 Windows Bash shell ssh 到我们的开发服务器时,它无法解析主机名。
请注意,我可以使用 ip 地址进行 ssh,而且这些主机名在 Windows 的其他地方也能正常工作。像腻子,常规 cmd,文件资源管理器等。
我还检查了 /etc/resolv.conf 并可以看到我们的工作名称服务器在那里列出。
从这里开始,我的网络技能不足,尤其是在 Linux 上,所以请帮助 :D