常用命令 - 输入输出、执行状态

输入输出

标准输入:默认为键盘,可以指定为文件。

标准输出:默认为屏幕,可以指定为文件。

*****如果在终端输入时,一行不能结束,可以使用反斜杠 \ 在下一行接着输入。

echo

echo用于将字符串输出
1 使用时如果用双引号字符串,内部的$变量将会被替换,内部的反单引号中的命令会输出``,但是转义字符不会发生转义。
2 使用单引号字符串,$变量不会被替换,返单引号不会执行命令,同样不发生转义字符转义。
3 不使用引号等于使用双引号。

echo有三个控制选项:
-n do not output the trailing newline
-e enable interpretation of backslash escapes
-E disable interpretation of backslash escapes (default)

# 输出后没有换行
echo -n "what‘s your first name: "
read first_name
# 输出后换行
echo "what‘s your last name: "
read last_name
# 没有输出tab字符
echo "first name\tlast name"
# 输出后有tab字符
echo -e "${first_name}\t${last_name}"

read

read后跟变量名称,会读取输入流,直到换行或者EOF(可以通过Ctrl+d)。
1. 如果变量有多个,那么每次读入的,将会通过空白字符分割赋值给变量。
2. 如果分割的个数多,最后一个变量获得到之后全部的输入。

用法
read [-ers] [-a 数组] [-d 分隔符] [-i 缓冲区文字] [-n 读取字符数] [-N 读取字符数] [-p 提示符] [-t 超时] [-u 文件描述符] [名称 ...]

cat

用来显示文件内容,控制字符,行号等。

如果没有指定文件,或者文件为"-",则从标准输入读取。

-A, --show-all equivalent to -vET
-b, --number-nonblank number nonempty output lines, overrides -n
-e equivalent to -vE
-E, --show-ends display $ at end of each line
-n, --number number all output lines
-s, --squeeze-blank suppress repeated empty output lines
-t 与-vT 等价
-T, --show-tabs 将跳格字符显示为^I
-u (被忽略)
-v, --show-nonprinting 使用^ 和M- 引用,除了LFD和 TAB 之外

管道pie

管道可以将一个命令的输出传递给另一个命令作为输入。管道用 | 表示。形式为
命令1 | 命令2

如下命令,将文件中的内容读取到变量中去。

cat text.txt | read var

tee

把标准输入,输出到标准输出。同时,也拷贝到相应的文件中去。

[email protected] ~
$ echo abcdefg | tee a.txt
abcdefg

[email protected]-254LBLA ~
$ cat a.txt
abcdefg

***** tee有一个-a选项,表示追加到文件。

重定向

打开shell时,每个进程有三个打开的文件与之关联,分别是:

标准输入:默认是键盘  文件描述符:1
标准输出:默认是屏幕  文件描述符:2
标准错误:默认是屏幕  文件描述符:3

如果有其他文件需要描述符,可以任意使用3-9的数字。

重定向的方式:

  1. >  重定向标准输出到一个新文件中。
  2. >> 重定向标准输出,会在文件中追加。
  3. < 重定向标准输入。

重定向的形式:

  1. 输出文件描述符 > 文件名
  2. 输出文件描述符 > &输出文件描述符
  3. < 输入文件名
  4. < &输入文件描述符

command > filename


把标准输出重定向到一个新文件中


command >> filename


把标准输出重定向到一个文件中 (追加)


command 1 > fielname


把标准输出重定向到一个文件中


command > filename 2>&1


把标准输出和标准错误一起重定向到一个文件中


command 2 > filename


把标准错误重定向到一个文件中


command 2 >> filename


把标准输出重定向到一个文件中 (追加)


command >> filename 2>&1


把标准输出和标准错误一起重定向到一个文件中 (追加)


command < filename >filename2


把command命令以filename文件作为标准输入,以filename 2文件


作为标准输出


command < filename


把command命令以f i l e n a m e文件作为标准输入


command << delimiter


把从标准输入中读入,直至遇到delimiter分界符


command <&m


把文件描述符 m作为标准输入


command >&m


把标准输出重定向到文件描述符 m中


command <&-


把关闭标准输入

执行状态

exec

exec用于清除当前shell环境,重新启动一个shell,并执行跟随的命令。命令执行完成之后,shell随之关闭。新shell与原shell具有相同的PID。

如果单纯执行shell script文件,并且文件第一行声明了shell路径,则启动子shell执行其中的命令
如果使用source命令执行shell文件,则在当前shell执行文件中的命令。

后台执行命令

与后台执行命令相关的有:

  1. &放到命令最后,可以将这行命令立即放到后台执行。为了不干扰,通常会将输出重定向到文件,不让它显示在屏幕。
  2. nohup命令,其后跟随的命令行在用户退出后仍然后再后台继续运行。
    通常使用nohub command &
  3. ctrl+z:将当前执行的命令放到后台,并暂停执行。
  4. jobs:查看后台执行的命令
  5. fg %jobnumber:将编号为num的后台命令调到前台执行。
  6. bg %jobnumber:将任务放到后台去处理
  7. kill %jobnumber:杀死后台任务
时间: 2024-10-10 09:53:01

常用命令 - 输入输出、执行状态的相关文章

嵌入式Linux GCC常用命令

本文和大家分享的主要是嵌入式Linux GCC常用命令相关内容,一起来看看吧,希望对大家学习嵌入式Linux有所帮助. 1.简介 GCC 的意思也只是 GNU C Compiler 而已.经过了这么多年的发展,GCC 已经不仅仅能支持 C 语言:它现在还支持 Ada 语言.C++ 语言.Java 语言.Objective C 语言.Pascal 语言.COBOL语言,以及支持函数式编程和逻辑编程的 Mercury 语言,等等.而 GCC 也不再单只是 GNU C 语言编译器的意思了,而是变成了 

Linux运维学习笔记之二:常用命令1

第三章 常用命令 1.mkdir : 创建目录,make directorys,-p 递归创建目录 mkdir-p /a/b/c 2.ls  : -l(long)d(directory)显示目录或文件,全称list -l#列出文件的详细信息,如创建者,创建时间,文件的读写权限列表等等 -d#只查看目录 -F#会在不同类型的文件后面加上*/=>@|等符号,以便区分不同类型文件 -p#会在目录后面加上/,以便区分目录和文件 -h#人类可读模式,显示K.M.G -i#显示inode,也就是文件的ind

Linux 常用命令汇总及解释。

1.linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示. linux上的文件管理类命令有:cat.tac.more.less.head.tail.cp.mv.rm.rmdir.mkdir等 cat:文件文本查看工具 cat [option]-[file]- -n:给显示的文本行编号 -E:显示行结束符$. tac:文件文本查看工具(cat 的倒序) tac [option]-[file]- more:可翻页查看文件内容,一页一页的翻动 注:如果more后面接的文件内容行数大于

salt 常用命令整理

salt 常用命令整理 ***********模块*********** 查看模块列表module salt 'minion' sys.list_modules 查看指定module的function用法 salt 'minion' sys.list_functions file 查看指定模块的详细用法 salt 'minion' sys.doc cmd ***********模块使用说明*********** 查看配置管理state模块列表 salt 'minion' sys.list_sta

Linux 系统运维常用命令

1 文件管理2 软件管理3 系统管理4 服务管理5 网络管理6 磁盘管理7 用户管理8 脚本相关9 服务配置==================================----------------------------------1 文件管理----------------------------------创建空白文件touch不提示删除非空目录rm -rf 目录名(-r:递归删除-f 强制)##################################恢复rm 删除的文件

学习linux-基础六(常用命令:cp,mv,rm)

一.cp用于文件拷贝,分为单源文复制和多源复制 单源复制语法:cp [options]-[-t] source dest . 注意事项: 1如果dest不存在,则事先创建此文件,并复制源文件的数据流至dest中. 2如果dest是非目录文件,则会覆盖目标文件. 3如果dest是目录文件,则先在dest目录下创建一个与源文件同名的文件并将源文件数据流复制过来. cp /tmp/ou/111.txt文件到/etc/hh目录下 [[email protected] testdir]# mkdir /t

Linux常用命令速查备忘

Linux常用命令速查备忘 PS:备忘而已,详细的命令参数说明自己man 一. 启动,关机,登入,登出相关命令 [login] 登录 [logout] 登出 [exit] 登出 [shutdown] 停止系统 [halt] 停止系统 [reboot] 重启动 [poweroff] 切断电源 [sync] 把内存里的内容写入磁盘 [lilo] 安装lilo启动管理程序 [grub] 安装lilo启动管理程序 二. Shell相关命令 [chsh] 切换Shell [history] 显示命令履历

linux文件系统、重定向及其常用命令总结

一.常用命令 touch命令:     touch [OPTION]... FILE...      -a:atime       -m:mtime       -c:ctime access.modify.change三个时间戳的区别: Access:访问时间,atime,通过cat.more等读取其内容 Modify:修改时间,mtime,改变文件的内容  Change:改变时间,ctime,改变文件的元数据,即修改权限.属组.属主等 使用stat命令可查看文件的三个时间戳如下: cp命令:

常用命令su ls cp cd mv cat touch mkdir rm head less more pwd tac 等

1.用户切换 su:switch user su kevin   //半切换,切换到kevin用户,但是不读取kevin用户的配置文件 su - kevin   //完全切换,执行这个命令的时候表示切换到kevin用户,并且重新读取用户环境相关配置文件 clear   /*清屏*/ 2.pwd pwd   //printing working directory,显示当前目录 3.cd cd:change directory 切换目录 cd 切换到用户的家目录,也就是主目录,Home direc