我一直在尝试编写一个添加非root用户的脚本.是否可以使用变量和adduser来做到这一点?我已经尝试过adduser bob
,它的工作原理非常好,为什么adduser $ user会返回adduser: Only one or two names allowed.
?
#!/bin/bash
read -p 'Do you want to add a non-root user? [y/N]' answer
case "${answer}" in
[yY]|[yY][eE][sS])
echo -e "What will the username be?"
read $user
adduser $user;;
[nN]|[nN][oO])
echo "Skipping";;
esac
Run Code Online (Sandbox Code Playgroud) 我正在尝试获取 argv 的内容并显示它们。
该程序将被称为像./main 5 6 7
.
r0 = argc
r1 = argv[0]
r2 = argv[1]
该程序可以正确获取命令行参数的数量,但使用 r1 并打印字符串时效果不同。它打印根据参数数量变化的随机字符。
.text
.global main
.extern printf
main:
push {ip, lr}
mov r1, r0
ldr r0, =string
bl printf
pop {ip, pc}
.data
string: .asciz "Argc: %d\n"
Run Code Online (Sandbox Code Playgroud)
参数:
.text
.global main
.extern printf
main:
push {ip, lr}
mov r1, r2
ldr r0, =string
bl printf
pop {ip, pc}
.data
string: .asciz "Argv: %s\n"
Run Code Online (Sandbox Code Playgroud) 我一直在使用eax等在我的64位操作系统上进行编程,但rax的工作方式完全相同.在exx vs rxx中编写内联汇编有什么好处吗?如果有任何exx跨平台兼容,并节省了使用预定义处理器宏在exx和rxx之间进行更改的边际时间.