是否可以在没有-附加到末尾的情况下打印 SHA 总和?
$ echo test | sha1sum
4e1243bd22c66e76c2ba9eddc1f91394e57f9f83 - <--- this "-" dash/hyphen
Run Code Online (Sandbox Code Playgroud)
我知道我们可以使用awk和其他命令行工具,但是可以不使用其他工具来完成吗?
$ echo test | sha1sum | awk '{print $1}'
4e1243bd22c66e76c2ba9eddc1f91394e57f9f83
Run Code Online (Sandbox Code Playgroud) 根据man sshd:
LOGIN PROCESS\n When a user successfully logs in, sshd does the following:\n\n <...>\n\n 9. Runs user's shell or command. All commands are run under the\n user's login shell as specified in the system password data\xe2\x80\x90\n base.\nRun Code Online (Sandbox Code Playgroud)\n不过,尚不清楚“在用户的登录 shell 下运行”字面意思是“登录 shell,如bash -l”?我的实验表明,不,不是:
$ ssh u@h shopt -q login_shell && echo 'Login shell' || echo 'Not login shell'\nNot login shell\nRun Code Online (Sandbox Code Playgroud)\n我不明白为什么会这样?它导致运行的命令无法获得通常的环境,就像登录到 shell 一样。这很麻烦。
\n这是ls -all命令的输出:
-rwxr----- 1 subhrcho dba 3600 Nov 13 17:26 jdev
-rw-r----- 1 subhrcho dba 1566 Nov 13 17:26 jdev-Darwin.conf
-rw-r----- 1 subhrcho dba 347 Mar 6 2009 jdev-debug.boot
-rw-r----- 1 subhrcho dba 821 Nov 13 17:26 jdev-logging-debug.conf
-rw-r----- 1 subhrcho dba 584 Nov 13 17:26 jdev-logging.conf
-rw-r----- 1 subhrcho dba 4717 Jul 31 16:09 jdev.boot
-rw-r----- 1 subhrcho dba 12877 Nov 13 17:26 jdev.common
-rw-r----- 1 subhrcho dba 5047 Dec 6 01:43 jdev.conf
-rwxr-x--- 1 subhrcho dba …Run Code Online (Sandbox Code Playgroud) 我使用一台安装了 CentOS7 的 Linux 服务器来测试和安装一些工具。现在我不记得我安装了多少个软件包。
我想删除所有这些包,这样我的服务器就像新的一样。我不想搜索每个包并一个一个删除。有没有办法只用一个命令就可以删除它们?
我在 Linux 中面临磁盘空间已满的问题。使用df命令检查时,我发现“/”目录占用了 100%。因此,要检查哪些文件夹占用太多的空间,我跑cd /和du -sh。但是运行命令需要很长时间。但最终我想了解“/”文件夹的哪些顶级直接子文件夹正在消耗大量磁盘空间的详细信息。因此,任何人都可以说出相同的命令。
我正在寻找 Linux 命令和选项组合,以逐字节显示给定文件的内容以及字符及其数字表示。
我的印象是,为了做到这一点,我会使用以下内容:
od -c [file]
Run Code Online (Sandbox Code Playgroud)
但是,有人告诉我这是不正确的。
我想检查第一个命令行参数 ( $1) 是否至少有 10 个字符,以及它是否为空。
该脚本被称为:
./myscript.sh 2018-08-14
Run Code Online (Sandbox Code Playgroud)
我试过这个,但它不起作用
timestamp="$1"
# check if command line argument is empty or not present
if [ "$1" == "" ] || [ $# -gt 1 ]; then
echo "Parameter 1 is empty"
exit 0
elif [! "${#timestamp}" -gt 10 ]; then
echo "Please enter at least a valid date"
echo "Example: 2018-08-14"
exit 0
else
echo "THIS IS THE VALID BLOCK"
fi
Run Code Online (Sandbox Code Playgroud) command bash 中的命令:运行带有参数的命令,忽略任何名为 command 的 shell 函数。
' -p ' 选项意味着使用$PATH的默认值来保证找到所有标准实用程序。
这里提到的默认 PATH 究竟是什么?当我定义时export PATH="/home/ozgur/":$PATH,我不是在默认值上添加一个新的 PATH 路径吗?
## For Example
~$ export PATH="/home/ozgur/":$PATH
~$ echo $PATH
/home/ozgur/:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
~$ script.sh
hey, i am working !
~$ command -p script.sh
hey, i am working !
Run Code Online (Sandbox Code Playgroud)
当我使用命令的“ -p ”选项时command,我希望它忽略我定义的新 PATH 路径,但这并没有发生。我到底错过了什么?什么是使用“点-p ”选项,如果用户的PATH路径变化并不与“覆盖-p ”选项?
在查看 Unix 时,我总是发现终端命令的数量有点多。TinyCoreLinux,例如我最喜欢的发行版,有超过 300 个命令。我不知道这些命令中有多少是必要的。最初的 Unix 盒子有多少条命令?
我基本上希望,通过进入原始盒子,我们可以减少新人的命令数量。是的,我知道您不必学习所有命令,但我知道当我学习了一个发行版的所有命令(这还没有完全发生)时,我肯定会有一种完成感。