大家跟我学SHELL (与本教程有关的疑问可在此提问)

红薯 发布于 2009/05/06 11:34
阅读 952
收藏 1

一、选择一个好SHELL

Unix 中常见的 shell 主要分为两大门派:

sh:

burne shell (sh)


burne again shell (bash)


        csh:
c shell (csh)


tc shell (tcsh)
korn shell (ksh)


本人的教学环境是 FreeBSD6.1 + sh ,你也可以使用bash来学习,bash兼容sh。我尽量将所有的SHELL语句也在Redhat上面验证一下。

FreeBSD上bash的安装方法有二:
1、pkg_add -r bash


2、cd /usr/ports/shell/bash2 && make install clean


Linux 上默认的SHELL已经是bash了。

查看自己机器上支持 Shell 种类的方法:
# cat /etc/shells


/bin/sh


/bin/csh
/bin/tcsh
/usr/local/bin/bash


设置自己的SHELL为sh



# chsh
# vipw


使用chsh命令会打开一个编辑器(类似vi),需要修改其中的Shell: /bin/csh一项为Shell: /bin/sh
使用vipw命令会打开一个编辑器(类似vi),需要修改指定用户所在行的最后一项为/bin/sh

如果你是在FreeBSD上安装了 bash ,一般修改为 /usr/local/bin/bash


二、SHELL基础(UNIX中的常用命令)

[color=Red]列出目录中的内容[/color]
ls

[color=Red]FreeBSD需要使用使用-G参数,才能按文件类型显示为约定的颜色[/color]
ls -G

[color=Red]使用长格式,更出目录中的内容[/color]
ls -l

[color=Red]显示一个文本文件的内容[/color]
cat  <文件名>
cat -n /etc/passwd  (显示文件,并加行号)
less  <文件名>
more  <文件名>

[color=Red]复制文件[/color]cp  <源文件名>   <目标文件名>

[color=Red]文件更名或移动文件至其他目录[/color]

mv  <文件名1>   <文件名2>
mv  <目录1> <文件名>   <目录2> <文件名>

[color=Red]显示当前工作的目录[/color]
pwd 

[color=Red]建立目录(-p 建立多级目录)[/color]
mkdir  <目录名>
mkdir -p  <目录1> / <目录2>

[color=Red]删除文件(或目录)[/color]
rm  <文件名>
rm -rf  <目录>

[color=Red]显示时间和日期[/color]
date

[color=Red]显示N天前的时间和日期[/color]

date -v -2d

[color=Red]其他格式请自己试一下,或查看手册  man date[/color]
date +%F
date "+DATE: %Y-%m-%d%nTIME: %H:%M:%S"

[color=Red]显示字符串[/color]
echo "hello c shell"
printf "hello c shell\n"

[color=Red]显示带颜色的字符串[/color]
echo -e "\e[31mRed String\e[0m"
printf  "\e[31mRed String\e[0m\n"

具体的颜色代码,请参考: http://www.51sincere.com/2006-11/20061123123521.htm

[  本帖最后由 levopat 于 2007-1-4 08:14 编辑  ]



加载中
返回顶部
顶部