日历

二月
28293031123
45678910
11121314151617
18192021222324
252627282912

分类

grep
can't disable telnet please help~~

shell 基础

奔斗 posted @ 2013年12月26日 20:44 in linux , 731 阅读

参考资料 :UNIX和shell程序设计权威教程 清华大学出版社

鸟哥的私房菜


 

1.验证当前shell

echo $0

2.重定向

类型 Korn shell or Bash shell
输入 0<file1
输出 1>>file1(追加) or 1>|file1(覆盖)
错误输入 2>>file1(追加形式) or 2>|file2(覆盖形式)
输出错误(不同文件) 1> file1 2>file2
输出错误(同一个文件) 1>file1 2&1

重定向到垃圾桶 /dev/null

3.管道

注意管道的左边命令必须能够发送数据至标准输出,右端命令必须能从标准输入接收数据

4.引号:斜干(\)、单引号('')、双引号("")
斜杆主要是用来转义、如果需要输出单引号,双引号也需要在引号前面加上 \
 
单双引号可以使其内的所有特殊字符失去特殊作用。不过单引号的能力比双引号的能力更强。爽引号保留诸如空格、制表符、换行符、自定义变量。单引号则不能
 
5.命令替代:在一段文本中使用某个命令 $(command)
 
6.作业控制
只有将工作挂起才能将工作置于前台或后台工作 (fg %n   bg  %n)
从前台后台停止工作 (ctrl+z stop)
从前台后台终止工作(ctrl +d kill)
 
7.别名
给命令自定义自己喜欢的名字(如果命令是家参数的需要用单引号或双引号) alias name=command
取消别名unalias name
显示所有的命令别名 alias
 
8.变量
8.1修改系统级变量
《私房菜》P377
增加变量 方式  -> 变量名=$"变量名":增加内容
将变量转变成环境变量 export 变量名
方式 结果
$(variable#key) 从变量的开头删除一直到key之后
$(variable##key) 从变量的开头删除最长的字符串一直到key之后
$(variable%key) 从变量的尾部开始删除一直到key之前
$(variable%%key) 从变量的尾部开始删除最长的字符串一知道key之前
$(varible/old_k/new_key)

用new_key替换第一个符合的old_k

$(varible//old_key/new_key) 用new_key替换所有的old_k

 

8.2修改个人变量
8.3变量的测试
 
9终端的区别
终端分为两种一种是需要登录的终端(login shell)指的是tty1~6,一种是不需要登录的(no-login shell),指的是在x-windows下启动的图形终端。两种终端启动的配置文件是不同的
login shell 对应 /etc/profile
no-login shell对应~/.bash_profile or ~/.bash_login or ~/.profile  (优先顺序从左到右)
 
详见《私房菜》P384 ~392 Bash Shell的环境操作
 
 
 
《私房菜》P380                              ps:乱码语系P371
 

登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter