开始看一本叫做learning the bash SHELL的书.

不知道为什么,看那些翻译过来的书老是让我想睡觉,觉得很无聊。

看看英文书,觉得很多概念都很浅显易懂(才看了几页的感觉。),既可以学技术,又可以学新单词。。一举两得

今天开始看getting bash

echo $SHELL #查看当前的shell 版本

我这台机器是csh

输入bash若能进入一个类似bash-3.00$的界面,代表系统有bash,如果是not found,可能是bash装在了一个你无法访问的文件夹,或者其他原因。

如何将bash作为login shell?

首先找出bash的安装目录,csh下可以输入

whereis bash 其他情况下可以输入whence bash,which bash

虽然我的环境是csh,但是用whereis和whence都提示Command not found,用which bash找到了

/usr/bin/bash

然后输入chsh bash-name

如无意外,就会提示输入密码。输入密码后登出再登入系统就可以开始使用bash了。

不知道是不是我这个用户没有权限,我输入上面的指令提示

chsh: Command not found

google 了下,原来On some systems chsh is a hard link to /usr/bin/passwd. Since chsh is not POSIX, it won't be on all systems, so try the passwd approach if you do not have chsh.

我的机器solaris没有装chsh,不得已我只好手动修改/etc/passwd文件,将root用户的最后一列修改为bash的路径。登出系统再登陆就看到login shell已经改回来了。

当然手动修改passwd文件是不推荐的,并且还需要root权限。最好还是安装chsh。

 

开始Interactive Shell Use

一个指令如lp myfile lp是命令(打印一个文件),myfile是argument。arguments通常是文件名,也会是username,如mail cam,cam就是username

option是特殊的argument,通常是一个dash(-)后跟一个字母,但是这并不是一个硬性规定(hard-and-fast rule.)

如lp -h myfile, -h告诉lp不要打印“banner page”

有时某些option也会有自己的arguments,如

lp -d lp1 -h myfile 有两个option一个argument。

第一个option是-d lp1,意思是把结果传递给lp1打印机(send the output to the printer(destination) called lp1)

第二个option仍为-h

 

文件 Files

作为UNIX系统中最重要的东西,文件中最重要的三类如下

regular files:也叫text files,包含可读写字符

executable files:也叫program,作为指令调用。

directories:

 最顶端的文件夹叫做root,在系统中没有名字。

full pathnames 以/开始

THE WORKING DIRECTORY(the current directory)

relative pathnames,不以/开头,文件路径相对于当前所在目录。

登陆系统后,所在位置叫做home directory

bash使用 tilde(~)符号代表home directory:~username如指向用户alice的文件story可以这样表示

~alice/story #这是绝对路径

一个单独的~代表所登陆用户自己的 home 目录。

如访问root(登陆用户的文件notes)~/notes

使用~是非常方便的,特别是当你的working 目录不在home目录时,如在/tmp

cd change working 目录

pwd 打印working目录

如果cd没有argument的话,则是回到home 目录,相当于cd ~

cd - 回到上次所在的目录。

 

 

 

 

hard-and-fast 

If you say that there are no hard and fast rules, or that there is no hard and fast information about something, you are indicating that there are no fixed or definite rules or facts.
There are no hard and fast rules, but rather traditional guidelines as to who pays for what. 

hierarchical  
hierarchical
A hierarchical system or organization is one in which people have different ranks or positions, depending on how important they are.
...the traditional hierarchical system of military organization. 
oval  
oval 椭圆形
Oval things have a shape that is like a circle but is wider in one direction than the other. 
 
tilde notation
tilde  颚化符号 (~)