一、Shell输入功能

1、键盘输入
 
方式一:
[root@Salve four]# cat test.sh
#!/bin/bash #-e 参数可以解析语句中的转义字符
echo -e "my name is user1\n my name is user2"
#-n 参数可以让echo命令结尾不换行
echo -n "my name is user1\n my name is user2"
echo #输出一个空行
#一个应用实例
echo -n "请输入你的名字:"
read name
echo $name
echo "my name is $name" [root@Salve four]#./test.sh
my name is user1
my name is user2
my name is user1\n my name is user2 请输入你的名字:tom
tom 

方式二:

[root@Salve four]# cat demo.sh
#!/bin/bash read -p '输入你的名字:' name
echo $name
[root@Salve four]#./demo.sh
输入你的名字:tom
tom
 
二、Shell输出功能

[root@Salve four]# cat output.sh
#!/bin/bash echo "Hello World!"
echo -e "Hello World\nVery Good!"
echo -e "\033[32;47m [test]\033[0m" [root@Salve four]#./output.sh
HelloWorld!
HelloWorld
VeryGood!
[test]
3、字幕颜色变化
(1)、例子:
 

[root@Salve four]# cat out2.sh
#!/bin/bash echo -e "httpd process \033[32;40m [OK] \033[0m "
[root@Salve four]# sh out2.sh
httpd process [OK]

(2)、颜色语法:

    \033[前景色;背景色m
    \033[0m                   #0m代表恢复到系统默认的颜色
 
(3)、字符界面前景颜色与背景颜色:
    前景色:30黑 31红 32绿 33黄 34蓝 35紫 36青 37白
    背景色:40黑 41红 42绿 43黄 44青 45蓝 46青 47白
 
4、其他命令
(1)、cat
    用法:cat [选项]... [文件]...
    将[文件]或标准输入组合输出到标准输出。
 
      -b, --number-nonblank    对非空输出行编号
      -E, --show-ends          在每行结束处显示"$"
      -n, --number             对输出的所有行编号
      -s, --squeeze-blank      不输出多行空行
      -T, --show-tabs          将跳格字符显示为^I
用途:制作菜单,如下: 
 例子:
root@Salve four]# cat a.sh
#!/bin/bash cat<<x #注意:可以是任意值,而非x,表示从x开始到x结束,原样输出
Please input your name: #heredoc字符串
)user1
)user2
)user3
x
[root@Salve four]# sh a.sh
Please input your name:
)user1
)user2
)user3
(2)、tee
用法:tee [选项]... [文件]...
将标准输入复制到每个指定文件,并显示到标准输出。(输出一份并保存一份)
 
  -a, --append        内容追加到给定的文件而非覆盖
  -i, --ignore-interrupts    忽略中断信号
例子:有利于边输出边保存
[root@Salve four]# sh a.sh | tee menu.txt
Please input your name:
)user1
)user2
)user3
[root@Salve four]# ls
a.sh demo.sh menu.txt out2.sh output.sh test.sh
(3)、more
分页查看
 
(4)、head
用法:head [选项]... [文件]...
将每个指定文件的头10 行显示到标准输出。
  -c,      显示每个文件的前K 字节内容;           
  -n,     显示每个文件的前K 行内容;
              
(5)、tail
用法:tail [选项]... [文件]...
显示每个指定文件的最后10 行到标准输出。
 
  -c,       输出最后K 字节;另外,使用-c +K 从每个文件的第K 字节输出
  -f,         即时输出文件变化后追加的数据。
  -n,       输出最后几行
 
(6)、nl
添加行号

[root@Salve four]# cat b.sh
#!/bin/bash cat /etc/passwd | head -|nl
nl /etc/passwd | head - [root@Salve four]# sh b.sh
root:x:::root:/root:/bin/bash
bin:x:::bin:/bin:/sbin/nologin
root:x:::root:/root:/bin/bash
bin:x:::bin:/bin:/sbin/nologin
 
 

四、Shell输入、输出功能和字符颜色设置的更多相关文章

  1. Shell(五)Shell输入/输出重定向

    Shell 输入/输出重定向 大多数 UNIX 系统命令从你的终端接受输入并将所产生的输出发送回​​到您的终端.一个命令通常从一个叫标准输入的地方读取输入,默认情况下,这恰好是你的终端.同样,一个命令 ...

  2. Shell test 命令,Shell 输入/输出重定向

    一.Shell test 命令 Shell中的 test 命令用于检查某个条件是否成立,它可以进行数值.字符和文件三个方面的测试. 数值测试 参数 说明 -eq 等于则为真 -ne 不等于则为真 -g ...

  3. 十一、Shell 输入/输出重定向

    Shell 输入/输出重定向 大多数 UNIX 系统命令从你的终端接受输入并将所产生的输出发送回​​到您的终端.一个命令通常从一个叫标准输入的地方读取输入,默认情况下,这恰好是你的终端.同样,一个命令 ...

  4. I/O(输入/输出)---字节流与字符流

    流: 分为输入流和输出流,输入/输出是相对计算机内存来说的,数据输入到内存是输入流,数据从内存中输出是输出流. 流对象构造的时候会和数据源联系起来. 数据源分为:源数据源和目标数据源.输入流联系的是源 ...

  5. Shell输入/输出重定向

    输出重定向 重定向一般通过在命令间插入特定的符号来实现.特别的,这些符号的语法如下所示 command1 >file1 上面这个命令执行command1然后将输出的内容存入file1. 注意任何 ...

  6. Shell 输入/输出重定向

    大多数 UNIX 系统命令从你的终端接受输入并将所产生的输出发送回​​到您的终端.命令通常从标准输入的地方读取输入,默认是终端.标准输出,默认情况下是终端. 重定向命令列表如下: 命令 说明 comm ...

  7. Java 输入/输出——字节流和字符流

    1.流的分类 (1)输入流和输出流(划分输入/输出流时是从程序运行所在内存的角度来考虑的) 输入流:只能从中读取数据,而不能向其写入数据. 输出流:只能向其写入数据,而不能从中读取数据. 输入流主要由 ...

  8. 吴裕雄--天生自然ShellX学习笔记:Shell 输入/输出重定向

    大多数 UNIX 系统命令从你的终端接受输入并将所产生的输出发送回​​到您的终端.一个命令通常从一个叫标准输入的地方读取输入,默认情况下,这恰好是你的终端.同样,一个命令通常将其输出写入到标准输出,默 ...

  9. 第四章输入/输出(I/O)4.1I/O涉及的设备及相关概念简介

    PCL中所有的处理都是基于点云展开的,利用不同的设备获取点云.存储点云等都是点云处理前后必须做的流程,PCL中有自己设计的内部PCD文件格式,为此,设计读写该该格式以及与其他3D文件格式之间进行转化的 ...

随机推荐

  1. linux c++编译问题和虚拟机网络通信

    1.gcc main.cpp -lstdc++ -o test5 2. service network stop service NetworkManager restart

  2. Fiddler进行模拟Post提交数据,总为null解决方式

    Fiddler模拟post提交时总是为空,解决办法 如果是表单提交则要在header加上 ContentType:application/x-www-form-urlencoded 如果是要post提 ...

  3. 去掉Actionbar下的shadow

    <item name="android:windowContentOverlay">@null</item> http://www.cnblogs.com/ ...

  4. 【WPF系列】基础 PasswordBox

    参考 How to bind to a PasswordBox in MVVM

  5. 在 KVM 上安装 Win7 虚拟机

    之前都是在用Linux 虚机,现在有需要用到Win7 虚机,才发现在 KVM 上安装 Win7 的过程远比想象中的复杂.本文就把其过程做个简单总结. 1. 在 Virtual Machine Mana ...

  6. 匈牙利算法 cogs 886. [USACO 4.2] 完美的牛栏

    886. [USACO 4.2] 完美的牛栏 ★★☆   输入文件:stall4.in   输出文件:stall4.out   简单对比时间限制:1 s   内存限制:128 MB USACO/sta ...

  7. P1774 最接近神的人_NOI导刊2010[树状数组 逆序对 离散化]

    题目描述 破解了符文之语,小FF开启了通往地下的道路.当他走到最底层时,发现正前方有一扇巨石门,门上雕刻着一幅古代人进行某种活动的图案.而石门上方用古代文写着“神的殿堂”.小FF猜想里面应该就有王室的 ...

  8. 用Access为支撑,书写一个用C#写入数据库的案列

    /// <summary> /// 读取Excel文档 /// </summary> /// <param name="Path">文件名称&l ...

  9. SQLserver中用convert函数转换日期格式

    SQLserver中用convert函数转换日期格式 2008-01-23 15:47 SQLserver中用convert函数转换日期格式2008-01-15 15:51SQLserver中用con ...

  10. 聚类算法:K-means

    2013-12-13 20:00:58    Yanjun K-means算法是很典型的基于距离的聚类算法,采用距离作为相似性的评价指标,即认为两个对象的距离越近,其相似度就越大.该算法认为簇是由距离 ...