wtxtools

C++博客 首页 新随笔 联系 聚合 管理
  11 Posts :: 8 Stories :: 2 Comments :: 0 Trackbacks

*********第二天**************************
*****author  Ice Xu *********************
*****Create Date  2006-10-26*************
*****NanJing  sd0603*********************
*****************************************

查看文件的命令:

more   该命令用于查看文件(些模式下查看的文件可以定住屏幕显示)
chmod      r 4 读   w  2 写    x 1 执行
setenv LANG C  (将语言的环境变量设为英文模式)

ls -ld 查看目录的权限
chmod 更改文件或目录的权限(谁能够修改一个文件的权限  ROOT 和 OWNER 才能修改这个文件的权限)
a all 所有人   u  user  当前文件的拥有者   g    group   组成员
1、在现在权限上添加权限:
chmod  u+x, g+w   filename
chmod  u+2, g+1   filenmae
2、更改之前的权限
chmod  a=rw  filename 
chmod  777   filename

创建一个文件:

touch filename(此命令可以创建一个文件,如果文件不存在时将创建一个新的文件,如果文件存在时,将更新文件的修改时间)
 系统创建成一个文件时,默认的权限为 --rw----r----r---  用数字表达时为  644
 系统创建一个目录时,默契认的权限为---rwx---rx---rx--  用数字表达时为  755
ls 查看文件时默认为用文件名的首字母排序的输出结果
ls -ld 查看目录的权限
ls -lt  以最后一次的修改的时间来查看所有的文件输出结果,常用于查看日志文件时最有效果,此命令比较有作用
ls -a (all)  可以查看当前目录中的隐藏文件,隐藏文件都以.开头的文件
ls -alt  详细列表,并按时间列表排序
ls -R   展开每一级的目录,可以查看到目录中子目录中的文件,递归的显示当前目录下的所有文件

 在一个目录创建一个文件时,一定要在此目录中有写权限

创建目录的命令:

mkdir   [-p]  dir1/dir2/dir3 此命令可以在目录中创建子目录
mkdir   dir1 dir2 dir3  用空格分隔时说明三个目录是平级目录,如果中间是用/分隔时说明是两个目录之间的关系是嵌套的关系

关于复制文件的命令:

cp
cp -i  cource_filename源文件    target_filename目标文件
参数-i 说明是 cp 时如果有覆盖时会有提示?

对目录的复制:

cp -r  dir  dir.bak  对源目录的复制,参数-r可以复制目录中子目录中的文件
chmod 1777    只有根目录下才可以进行
chmod +t 此功能说明,此目录可以供所有人创建和使用,但是想修改或删除进不能进行,只有此文件的拥有者或有写权限的人

删除文件的命令:

rm
rm  -i  有提示的删除文件, 做rm操作时一定要特别小心,不要误删除文件
删除一个文件所在的权限,是指所在目录的写权限,关不在于文件的本身的权限
rm  -f  把一个文件强制删除,不一定对文件有写权限
删除一个目录的命令:
rmdir   只能删除一个空目录
rmdir  -r    加此参数选项时,说明要删除该目录下的所有文
rmdir  -ir    加此参数选项时,说明要删除该目录下的文件时有提示

移动命令:

mv     移动命令

利用此命令可以移动文件或更改文件目录的名称
利用此命令移动时参数第一个一下要为源文件名,目标也可以为一个目录

ln  连接命令

i接点,一个接点里面包含,除了文件名以外关于此文件的所有的属性都会记在i结里面,一个文件肯定对应一个i结点,操作管理一
个文件时就是用i接点来管理的,每个文件一个文件名,还会有一个i结点,
2  硬连接数   在一个i接点中还会记录一个data block 的指针,操作系统要处理一个文件时一定要先找到i结点,每个文件都会有一个
i接点表, newfs时创建的,没有足够的空间时,不是没有i接点,而是data block不够,所以一般情况下,很少有i 接点不够的错误

注意点:
软连接:软连接时另外一个文件会随源文件一起变化,因为它也会去有相应的一个i节点,所以两个文件会同步更新,它内部的data block
        里面的就是源文件名,相当于windows 中的快捷方式,源文件删除时,软连接也不可用。软连接的标志为 l,但凡文件类型中有
        l开头的就一定是软件连接文件。软连接文件是可以跨文件系统的。

硬连接:硬连接时另外一个文件不会随源文件一起变化,因为这时会去申请一个新的i 节点,此时i接点中存放的是源文件的copy 所以当源文
        件变化时,硬连接时中的内容不会变化。

unix中的好朋友  man   name
利用man+ name 命令可以有相当详细的命令的介绍。平时可以多去查看些命令的用法。
man  -s4 terminfo
man  -k setuid

cal    输出日历
date   输出日期

meacharacters(元字符)
shell会对此会额外的解释
1、*   通配符-----表示0个或更多个字符。
2、?  表示任意一个字符。
3、[]  表示在哪个范围之间。
4、;  一行内输入多个命令时,中间用分号分隔 ,主要用于连接两条命令
5、>   把一个命令的输入,重定向到一个文件中,而不是到屏幕上。 重定向时如果文件存在会覆盖,如果不存在时会生成一个新文件
6、>>  重定向时把一个命令的输出追加到一个已经存在的文件中去。
7、<   输入重定向,

piping(|) 管道符:
pipe
管道的作用:
      把上一个命令的输出作为下一个命令的输入,管道的两边都是命令,;的两边也是命令
      一般相对复杂的命令都是由一些相对简单的命令用管道来连接
实际应用: ls -l | more   分屏显示

cat   命令可以一次性显示多文件,把几个文件同时显示出来:
cat /etc/passwd | awk -F: '{ print $1 "\t" $6 }' | sort > ~/userinfo
此命令的作用:把/etc/passwd 目录下的内容按一定的分隔,并排序输入至另一个文件中去。
head 命令    默认为前10行
head /etc/passwd              head -5 /etc/passwd  指定几行看文件的内容
tail 命令    默认为后10行  此命令还可以动态显示文件内容,会适时刷新。常用于日志文件中的查看方式。
看一个文件主要用的命令:more  cat  head  tail 

awk  和 sed  都有很强的文本处理能力。
有专门的一本书叫做awk编程

VI 编译器  full screen edit 全屏编辑

a i o 这几个命令可以由命令模式转到输入模式:
由输入模式转回命令模式:ESC
存盘退出时要进入到底行模式:
ESC在各种模式按都没有问题
移动到行尾: :$   G
移动到行首: :^
文件尾     G
首件首    1G
任意行   行号G
屏幕中    M
屏幕尾    L
屏幕首    H
显示行号码: set nu
Ctrl + f 向下翻屏
ctrl + b 向上翻屏
删除一个字符:X
删除多个字符:4X
删除一个单词:dw
删除多个单词:3dw
撤消: u    VI中最多只能撤消一次
删除一行:dd
删除指定行:5,10d
替换一个字符:r
替换一个单词:cw     把长单词改为一个短单词时改完事按一下ESC
从光标当前位置一直改到行尾:C
yy     拷贝行
nyy    拷贝n行
p      粘贴

存盘        :w + 文件名
退出         q!
存盘且退出    wq
替换全文:
:1,$s/旧串/新串/g  替换全文(%s/旧串/新串/g)
每行前都加一个#号:
1,$s /^/#
合并一个文件的内容:
:r filename    在光标所在的位置插入另一行

users 命令
如果不能用话的可以用 /usr/bin
who   命令
who am i 用于显示当前具体登陆用户的信息
此命令不能正常使用时同样也是由于环境变量引起的,应该使用绝对路径:/usr/ucb/whoami

找文件命令:find
find path expression     执行find 命令时也要权限必须要有读和执行权限
find / -name perl        从根目录下找文件名为prel的文件精确查找
find . -name "file*"     从当前目录下找文件名中含有file的文件名
find . -mtime 10 -print  从当前目录 下找文件在最后十天内修改过的文件
10 的三种表达形式        -10  十天之内  +10 修改时间超过10的文件             10   十天之前
find /etc -user 0 -size+400 -print  找出属主为root ,文件大小400个block  约200k    400*512
find ~ -perm 777 > ~/holes
find /export/home -type f -atime +365 -exec rm {} \;  找文件类型为文件,访问时在一年以前的夹, 并执行删除. \; 为语法上要求要这样写
对于一般很难删除的文件,可以试用find来删除.

 


 

posted on 2006-11-07 10:26 传统的浪漫 阅读(204) 评论(0)  编辑 收藏 引用

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理