linux 执行命令?Linux的作用
linux切换用户命令
su。
su命令用于在Linux系统中切换当前用户身份到其他用户身份,如果以普通用户身份切换到其他用户身份,需要输入目标用户的密码;而如果以root用户身份切换其他用户身份,则不需要输入目标用户的密码。
具体使用方法如下:1、打开终端输入su-用户名命令,其中“用户名”是你想要切换到的用户的用户名。例如,如果你想切换到名为“john”的用户,那么命令就是su-john。
2、系统会提示你输入目标用户的密码。输入密码时,密码字符不会显示在屏幕上,这是出于安全考虑。输入完毕后按Enter键。
3、如果密码正确,你现在就已经切换到目标用户了。你可以使用whoami命令来确认当前的用户身份。
linux shell脚本执行命令详解
在Linux下,如果你需要执行shell脚本,那么应该使用那个命令呢?下面由我为大家整理了linux shell脚本执行命令的相关知识,希望对大家有帮助!
linux shell脚本执行
linux shell脚本执行方法一:切换到shell脚本所在的目录(此时,称为工作目录)执行shell脚本:
cd/data/shell
./hello.sh
./的意思是说在当前的工作目录下执行hello.sh。如果不加上./,bash可能会响应找到不到hello.sh的错误信息。因为目前的工作目录(/data/shell)可能不在执行程序默认的搜索路径之列,也就是说,不在环境变量PASH的内容之中。查看PATH的内容可用 echo$PASH命令。现在的/data/shell就不在环境变量PASH中的,所以必须加上./才可执行。
linux shell脚本执行方法二:以绝对路径的方式去执行bash shell脚本:
/data/shell/hello.sh
linux shell脚本执行方法三:直接使用bash或sh来执行bash shell脚本:
cd/data/shell
bash hello.sh
或
cd/data/shell
sh hello.sh
注意,若是以方法三的方式来执行,那么,可以不必事先设定shell的执行权限,甚至都不用写shell文件中的第一行(指定bash路径)。因为方法三是将hello.sh作为参数传给sh(bash)命令来执行的。这时不是hello.sh自己来执行,而是被人家调用执行,所以不要执行权限。那么不用指定bash路径自然也好理解了啊。
linux shell脚本执行方法四:在当前的shell环境中执行bash shell脚本:
cd/data/shell
. hello.sh
或
cd/data/shell
source hello.sh
前三种方法执行shell脚本时都是在当前shell(称为父shell)开启一个子shell环境,此shell脚本就在这个子shell环境中执行。shell脚本执行完后子shell环境随即关闭,然后又回到父shell中。而方法四则是在当前shell中执行的。
linux搜索历史命令
linux系统下搜索历史命令是什么呢?下面是命令的具体介绍:
linux系统下搜索历史命令是:history。
1、history命令功能:
linux系统下,history命令是用于显示历史执行命令以及读取命令历史文件中的历史执行的命令到内存中,或者从内存中把执行命令的历史写入到保存历史执行命令的文件中的内部命令。
2、语法:
history(选项)(参数)
3、常用参数:
-c清空内存中命令历史
-d#删除指定的历史命令,比如 history-d 100,就是删除第100个命令历史
#:显示最近的#条历史,例如:history 20,表示显示最近的20条命令历史
-a:追加本次会话新执行的命令历史列表至历史文件
-n:将历史文件中未读过的行加载到内存中的历史列表,方便多个终端同步内存中的命令历史。
-r:读取历史文件中的所有历史命令到内存中的历史列表,即使内存中的列表中已经存在这条历史。
-w:保存内存中历史列表到指定的历史文件,history-w./test把历史写入到当前目录的test文件中
-p:官方解释没看懂,我觉得此命令相当于echo的作用,但是使用history-p string输出的信息不被记录到历史中,
就是“不被记录的echo,隐形echo,你可以尝试使用history-p$变量名,这样会不会觉得很像echo?
但是如果你使用history-p string1 string2,会发现它并不像echo打印到一行,会打印成多行。
-s:伪造命令历史,比如history-s rm-rf/opt,这样写并不会执行删除opt目录的操作,只是把这条没有执行的命令加入到了历史中。