第一章
时间:2006-01-11 来源:noping
shell是一个命令解释器
shell是一个程序
shell是一种命令语言和程序设计语言
windows下的dos命令解释器command.com linux 有多种命令解释器。
shell的类型 sh ksh bash ash csh tcsh bsh
/etc/shells 中列出了当前系统上所有的壳
echo "$SHELL" 列出当前正在使用的壳
程序在shell执行
shell中可以运行子shell
chomd [who] operator [permission] filename
who u g o a
operator + - =
permission r w x s t
setuid (suid sgid) u+s g+s
chown chgrp chown user file / chgrp group file /chown user:group
umask nnn
ln [-s] source_path target_path
chmod mode filename
r = 4
w = 2
x = 1
chmod 644 filename
chmod 740 filename
suid = 4
sgid = 2
t = 1
chown [-R] owner filename
chown owner:group filename
chown :group filename
chgrp [-R] group filename
b block
p pipe
- file
d directory
c charact
l ln
ls -l 用户名跟组名只能看到8位
ls -h human
$ umask
0002
#umask
0022
$ touch filename
$ ls -l filename
-rw-r--r--
$ mkdir dirname
$ ls -l dirname
drwxr-xr-x
/etc/profile global
$HOME./profile user
$HOME./bash_profile user
hard ln
soft ln
ln [-s] source_path target_path
$ dd if=/dev/zero of=/tmp/example bs=1024 count=1024
$ ls -l example
-rw-r--r-- 1 test test 1048576 Jan 6 10:17 example
$ ln exapmle example.ln
$ ls -l example example.ln
-rw-r--r-- 2 test test 1048576 Jan 6 10:17 example
-rw-r--r-- 2 test test 1048576 Jan 6 10:17 example.ln
hard ln 文件大小相同.指向同一个block.实际占用空间并不是1048576*2.
$ ln -s example example.lns
$ ls -l example example.ln example.lns
-rw-r--r-- 2 test test 1048576 Jan 6 10:17 example
-rw-r--r-- 2 test test 1048576 Jan 6 10:17 example.ln
lrwxrwxrwx 1 test test 7 Jan 6 10:18 example.lns - > exapmle
soft ln 文件大小不同。指向指向block的index。
hard ln 不能跨文件系统 soft ln 可以跨文件系统
对 soft ln 的修改也会修改文件本身。这是跟windows下快捷方式的不同点。
shell 脚本
使用shell脚本的原因
1 功能强大 2 节约时间
shell脚本的基本元素
#!/bin/bash
# 注释
变量
流程控制结构
别名
alias
alias 11="ls -lah"
/etc/bashrc $HOME/.bashrc
命令替换
$ vi myfile
parm
findfile
:wq
$ ls `cat myfile` -la
后台处理
bg background
fg foreground
jobs
ctrl+z
kill -9
kill %
nohup command &
shell是一个程序
shell是一种命令语言和程序设计语言
windows下的dos命令解释器command.com linux 有多种命令解释器。
shell的类型 sh ksh bash ash csh tcsh bsh
/etc/shells 中列出了当前系统上所有的壳
echo "$SHELL" 列出当前正在使用的壳
程序在shell执行
shell中可以运行子shell
chomd [who] operator [permission] filename
who u g o a
operator + - =
permission r w x s t
setuid (suid sgid) u+s g+s
chown chgrp chown user file / chgrp group file /chown user:group
umask nnn
ln [-s] source_path target_path
chmod mode filename
r = 4
w = 2
x = 1
chmod 644 filename
chmod 740 filename
suid = 4
sgid = 2
t = 1
chown [-R] owner filename
chown owner:group filename
chown :group filename
chgrp [-R] group filename
b block
p pipe
- file
d directory
c charact
l ln
ls -l 用户名跟组名只能看到8位
ls -h human
$ umask
0002
#umask
0022
$ touch filename
$ ls -l filename
-rw-r--r--
$ mkdir dirname
$ ls -l dirname
drwxr-xr-x
/etc/profile global
$HOME./profile user
$HOME./bash_profile user
hard ln
soft ln
ln [-s] source_path target_path
$ dd if=/dev/zero of=/tmp/example bs=1024 count=1024
$ ls -l example
-rw-r--r-- 1 test test 1048576 Jan 6 10:17 example
$ ln exapmle example.ln
$ ls -l example example.ln
-rw-r--r-- 2 test test 1048576 Jan 6 10:17 example
-rw-r--r-- 2 test test 1048576 Jan 6 10:17 example.ln
hard ln 文件大小相同.指向同一个block.实际占用空间并不是1048576*2.
$ ln -s example example.lns
$ ls -l example example.ln example.lns
-rw-r--r-- 2 test test 1048576 Jan 6 10:17 example
-rw-r--r-- 2 test test 1048576 Jan 6 10:17 example.ln
lrwxrwxrwx 1 test test 7 Jan 6 10:18 example.lns - > exapmle
soft ln 文件大小不同。指向指向block的index。
hard ln 不能跨文件系统 soft ln 可以跨文件系统
对 soft ln 的修改也会修改文件本身。这是跟windows下快捷方式的不同点。
shell 脚本
使用shell脚本的原因
1 功能强大 2 节约时间
shell脚本的基本元素
#!/bin/bash
# 注释
变量
流程控制结构
别名
alias
alias 11="ls -lah"
/etc/bashrc $HOME/.bashrc
命令替换
$ vi myfile
parm
findfile
:wq
$ ls `cat myfile` -la
后台处理
bg background
fg foreground
jobs
ctrl+z
kill -9
kill %
nohup command &
相关阅读 更多 +