为什么不在这个简单的 bash 脚本中echo $1打印$1?
#!/bin/bash
# function.sh
print_something () {
echo $1
}
print_something
$ ./function.sh 123 -> why doesn't it print '123' as a result?
Run Code Online (Sandbox Code Playgroud) 我声明一个关联数组:
declare -A array=([a]=blue [b]=red [c]=yellow)
Run Code Online (Sandbox Code Playgroud)
现在我可以做:
echo ${array[@]} --> blue red yellow
Run Code Online (Sandbox Code Playgroud)
或者
echo ${array[b]} --> red
Run Code Online (Sandbox Code Playgroud)
或者
echo ${!array[@]} --> a b c
Run Code Online (Sandbox Code Playgroud)
现在我只想知道与red值关联的键。有没有办法只检测单个密钥?
我使用cut命令注意到这两个不同的字段行为:
bash:~$ var=`cat /proc/cpuinfo | grep 'model name' | uniq | cut -d ' ' -f 3,4,5,6,7,8 `
echo $var
Run Code Online (Sandbox Code Playgroud)
产出
Intel(R) Core(TM) i7-3632QM CPU @ 2.20GHz
Run Code Online (Sandbox Code Playgroud)
和:
bash:~$ echo `cat /proc/cpuinfo | grep 'model name' | uniq` | cut -d ' ' -f 3,4,5,6,7,8
Run Code Online (Sandbox Code Playgroud)
产出
: Intel(R) Core(TM) i7-3632QM CPU @
Run Code Online (Sandbox Code Playgroud)
字段编号相同但输出不同。为什么?
我尝试同时使用 useradd 和 adduser 来获取键入为 Firstname.Lastname 的用户名。我还尝试安装 libuser 并使用 luseradd,但我也遇到了错误。有没有办法做到这一点(当然应该是)?我正在尝试编写一个脚本,该脚本从文件中获取用户列表并创建其中的新用户。我可以使用简单的用户名来做到这一点,但我需要列出 Firstname.Lastname。如果我使用: adduser --force-badname 那么我可以获得用户 Firstname.Lastname 但主文件夹不包含桌面和模板目录 .. 以及如果我使用: useradd --create-home "john.doe" 我可以获得主文件夹,但里面没有桌面和模板....