我是Linux的新手,正在尝试创建一个简单的程序来检查用户是否存在,如果存在,则退出终端,如果不存在,则创建它。我想我已经做了所有的事情除了离开终端。
这是我到目前为止的代码:
#!/bin/bash
user_name=newUser
if [ $(getent passwd $user_name) ]
then
echo "User $user_name already exists!"
exit
else
echo "The user $user_name doesn't exist and will be added"
我希望将程序的输出重定向到具有变量名的文件,同时重定向可能出现的错误。到目前为止,这是一个脚本:
#!/bin/bash
echo "Se ejecutará el PET-linux.x con PET.inp como input, debe indicarse el nombre del archivo output."
echo "Nombre del archivo .out: "
read outfile
./PET-linux.x < PET.inp > ${outfile}.out 2> /dev/null
echo $?
每当我运行这个程序时,它就会完美地完成第一个函数,然后在执行任何其他操作之前结束该程序。如何允许其他两个函数运行?
import subprocess
subprocess.call(["su", "my_user"]) # runs perfectly
print("user switched to my_user") # does not run
subprocess.call(["cd", "../documents/my_code"]) # does not run
顺便说一句,我正在使用ipyth
我试图在我的C程序上运行gdb,但是我的调试器在我的终端上显示了这一点:
> (gdb) file main
Reading symbols from main...done.
> (gdb) run
Starting program: /home/userA/Desktop/test/part4_sent/main
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
T
我在操作系统、Linux (Ubuntu和CentOS)和Windows 7中使用相同的源代码编写了一个简单的添加程序,如下所示:
#include <stdio.h>
int main(){
int a,s,d;
printf("type the values u want to add and give tab between them\n");
scanf("%d %d",&a,&s);
d=a+s;
printf("addition is %d",d);
return 0;
system("
我有一个无限循环,只要我按下任何键就应该结束。该程序在linux上运行。我偶然发现了一个函数,下面是我的一些代码: int main(){
While(1){
ParseData(); //writing data to a text file
}
return 0;
} 因此,我知道我可以通过在终端中使用ctrl +c来终止该进程,但它似乎会中断写入进程,因此数据不会在该进程中途完全写入。我读到我需要使用ncurses库中的函数,但我不太理解任何函数。 有人能帮我一下吗?谢谢!