2014年(13)
分类: LINUX
2014-03-10 22:53:18
[root@teacher ~]# firefox ftp://10.0.2.253/note/11-16 &
====
ls、cd、pwd、mkdir、touch、tree
cat、more、less、
du、file
which、whereis、locate
====
[root@teacher ~]# \ls -l 只显示黑白颜色,列出文件和文件夹
====
find
find命令
用途:用于查找文件或目录
格式:find [查找范围] [查找条件] [动作]
常用查找条件
-name:按文件名称查找
-size: 按文件大小查找
-user: 按文件属主查找
-type: 按文件类型查找
-perm :按文件权限查找 (permisson)
-mtime :按文件更改时间查找 (modify time) (天)
-mmin :按文件的更改时间查找 (分钟minute)(modify time )
-atime 根据访问时间来查找 (access 访问)
-ctime 根据修改文件属性时间来查找 (change 改变、修改)
-newer:按比某个文件更新的查找
===
[root@teacher lianxi]# mkdir amin 新建文件夹amin
stat - display file or file system status
[root@teacher lianxi]# stat amin 查看amin文件夹的状态信息
File: `amin'
Size: 4096 Blocks: 8 IO Block: 4096 directory
Device: 803h/2051d Inode: 2228253 Links: 2
Access: (0755/drwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2013-11-27 19:44:38.009332321 +0800 访问文件的时间
Modify: 2013-11-27 19:44:38.009332321 +0800 修改文件里的内容(增加或者删除都会导致大小变化---》文件的属性会变化)
Change: 2013-11-27 19:44:38.009332321 +0800 修改属性的时间
[root@teacher lianxi]#
===
[root@teacher lianxi]# cat /etc/issue 查看linux系统的版本
Red Hat Enterprise Linux Server release 6.4 (Santiago)
Kernel \r on an \m
[root@teacher lianxi]# uname -r 查看linux的内核
2.6.32-358.el6.x86_64
[root@teacher lianxi]#
====
特殊查找条件
-o :逻辑或,只要所给的条件中有一个满足,寻找条件就算满足 or
-not :逻辑非,在命令中可用“!”表示。该运算符表示查找不满足所给条件的文件
-a:逻辑与,系统默认是与,可不加,表示只有当所给的条件都满足时,寻找条件才算满足。 and
====
[root@teacher lianxi]# find / -name zhongguohehuoren -exec cp {} /zhou \;
find 是一个查找的命令
/ 查找的范围和位置
-name 根据名字来查找
zhongguohehuoren 是文件名
-exec 执行后面的命令 (execute)
cp 是复制的命令
{} 用来存放前面的find命令查找的结果。相当于一个容器,用来存放find找的结果
/zhou 是cp复制内容的目的地
\; 结束标志
=====
[root@teacher lianxi]# find / -name zhongguohehuoren -ok rm -rf {} \;
< rm ... /bin/zhongguohehuoren > ? y
< rm ... /lianxi/zhongguohehuoren > ? y
< rm ... /zhongguohehuoren > ? y
[root@teacher lianxi]#
-ok选项会提醒你是否要执行后面的删除命令
-exec 是不给予提醒,直接执行后面的命令
====
[root@teacher boot]# find /boot -size +1024k -o -name "vmlinuz*" |xargs ls -l
====
-a and
-o or
not !
===
| 管道符号:将前面一个命令的输出送给后面一个命令作为输入
xargs 是将前面命令的输出做为参数送给后面的命令使用
-rw-r--r--. 1 root root 15034508 Mar 9 14:17 /boot/initramfs-2.6.32-279.el6.i686.img
-rw-r--r-- 1 root root 15614654 Mar 27 09:41 /boot/initramfs-2.6.38.8.img
-rw------- 1 root root 3704307 Mar 9 14:20 /boot/initrd-2.6.32-279.el6.i686kdump.img
-rw-r--r--. 1 root root 1846041 Jun 14 2012 /boot/System.map-2.6.32-279.el6.i686
-rw-r--r-- 1 root root 1878946 Mar 27 09:41 /boot/System.map-2.6.38.8
lrwxrwxrwx 1 root root 22 Mar 27 09:41 /boot/vmlinuz -> /boot/vmlinuz-2.6.38.8
-rwxr-xr-x. 1 root root 3857376 Jun 14 2012 /boot/vmlinuz-2.6.32-279.el6.i686
-rw-r--r-- 1 root root 3726704 Mar 27 09:41 /boot/vmlinuz-2.6.38.8
[root@teacher boot]#
====
>> 输出重定向,把在屏幕上的输出重新定向到指定文件里,如果这个文件不存在,会自动建立。如果这个文件存在,不会覆盖原来里面的内容。 (追加)
[root@teacher lianxi]# find /boot -size +1024k -o -name "vmlinuz*" >> gt1M.txt
[root@teacher lianxi]# ls
amin gt1M.txt huyang.txt sc yang_zhao.txt zhaozhifan.txt
bb hosts luamin secure zhangwu.txt zhuzhipeng.txt
cc huyang.sh messages yang.txt zhao.txt
[root@teacher lianxi]# cat gt1M.txt
/boot/initrd-2.6.32-358.el6.x86_64kdump.img
/boot/initramfs-2.6.32-358.el6.x86_64.img
/boot/System.map-2.6.32-358.el6.x86_64
/boot/vmlinuz-2.6.32-358.el6.x86_64
[root@teacher lianxi]#
=====
. 代表当前目录
.. 代表上一级目录(父目录)
===
-type 后面接不同的字母,代表不同的文件类型
File is of type c:
b block (buffered) special 块设备(磁盘储存设备)
c character (unbuffered) special 字符设备(输入、输出字符相关的设备、键盘、鼠标、显示终端)
d directory 目录(文件夹)
p named pipe (FIFO) 管道文件
f regular file 常规文件
l symbolic link 符号链接文件(软链接文件)
s socket 接口文件
=====
ln - make links between files 创建链接文件的命令 (windows里的快捷方式)
硬链接(hard links) 符号链接(软链接)symbolic links
-s, --symbolic
make symbolic links instead of hard links
[root@teacher lianxi]# mkdir hunan 新建hunan目录
创建一个链接文件xiang链接到将当前目录下的hunan
[root@teacher lianxi]# ln -s hunan xiang
源文件 目的文件
删除链接文件不会删除源文件
[root@teacher lianxi]# ln -s /lianxi/amin /root/Desktop/amin
源文件 链接文件(在桌面创建链接文件)
[root@teacher lianxi]# ln -s /lianxi/amin /root/桌面/amin
中文版系统,创建amin快捷方式到桌面
===
文件和目录都可以建立符号链接(软链接)
[root@teacher lianxi]# ln -s xiaohei heihei
[root@teacher lianxi]# ll
total 1348
drwxr-xr-x 2 root root 4096 Nov 27 21:45 amin
drwxr-xr-x 2 root root 4096 Nov 23 10:46 bb
drwxr-xr-x 2 root root 4096 Nov 23 10:46 cc
-rw-r--r-- 1 root root 161 Nov 27 21:16 gt1M.txt
lrwxrwxrwx 1 root root 7 Nov 27 21:50 heihei -> xiaohei
[root@teacher lianxi]# cat xiaohei
123
123
[root@teacher lianxi]# cat heihei
123
123
[root@teacher lianxi]#
=======
[root@teacher lianxi]# ll -d hunan/
drwxr-xr-x 2 root root 4096 Nov 27 21:41 hunan/
[root@teacher lianxi]# ll xiang/
total 0
[root@teacher lianxi]# ll -d xiang
lrwxrwxrwx 1 root root 5 Nov 27 21:41 xiang -> hunan
[root@teacher lianxi]#
[root@teacher lianxi]# find . ! -type d 查找当前目录下不是文件夹的文件(非目录)
./zhoujunjie
./.messages.swp
./uuu
./huojian
./aa.txt
./zhouxingchi
./messages
./bb.txt
./hosts
./tangtaotao
[root@teacher lianxi]#
==========
练习:
1.在根目录下新建一个目录叫find
2.进入find目录,复制/etc/passwd 到当 前目录
3.复制/boot目录到当前目录下
4.新建一个目录叫hunantv
5.新建一个空文件叫daydayup
6.查找mkdir和touch命令的路径
7.使用locate命令查找出ifconfig文件的路径
8.使用find命令查找出/find目录下大小大于1M并且名字里包含vmlinuz的文件
9.使用find命令查找出/find目录下大小大于1M小于4M的文件
[root@teacher find]# find . -size +1M -a ! -size +4M -exec ls -lh {} \;
10.使用find命令查找出/find目录下所有的目录
11.使用find命令查找出/root目录下5天前修改过的文件,然后复制到/lianxi目录下
[root@teacher lianxi]# find /root -mtime +5 -exec cp {} /lianxi -rf \;
12.使用find命令查找出/目录下2小时前修改过的文件,然后复制到/lianxi目录下
13.使用find命令查找出/目录下1小时内修改过的文件
[root@teacher lianxi]# find /lianxi -mmin -60
====
find、stat、ln
===
练习:
1.在根目录下新建一个目录叫find
2.进入find目录,复制/etc/passwd 到当前目录
3.复制/boot目录到当前目录下
4.新建一个目录叫hunantv
5.新建一个空文件叫daydayup
6.查找mkdir和touch命令的路径
7.使用locate命令查找出ifconfig文件的路径
8.使用find命令查找出/find目录下大小大于1M并且名字里包含vmlinuz的文件
9.使用find命令查找出/find目录下大小大于1M小于4M的文件
10.使用find命令查找出/find目录下所有的目录
======
11.使用find命令查找出/root目录下5天前修改过的文件,然后复制到/lianxi目录下
12.使用find命令查找出/目录下2小时前修改过的文件,然后复制到/lianxi目录下
13.使用find命令查找出/目录下1小时内修改过的文件
14.查找出2个小时内生成的/tmp目录下文件大小大于10K文件同时用户是root的,然后复制到/back目录下
find /tmp -mmin -120 -type f -user root -size +10k -exec cp {} /back \;
==