Linux学习
文件管理
cat
cat(英文全拼:concatenate)命令用于连接文件并打印到标准输出设备上。
cat -n test.py
打印行号cat -n test.py > test1.py
加上行号输出到test1.py
cat null > test1.py
清空test1.py
文件
chown
Linux chown(英文全拼:change owner)命令用于设置文件所有者和文件关联组的命令。
chown 需要超级用户 root 的权限才能执行此命令。
-
chown mysql:mysql test.py
修改属主 -
chown -R mysql:mysql /opt/test
将
/opt/test
目录下的所有文件与子目录的拥有者皆设为mysql
,群体的使用者mysql
file
Linux file命令用于辨识文件类型。
-
file -i test.py
[root@blue-ocean test]# file -i test.py test.py: text/plain; charset=utf-8 [root@blue-ocean test]# file -i /opt/test/ /opt/test/: inode/directory; charset=binary
find
Linux find 命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则 find 命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。
find 路径 -命令参数 [输出形式]
很多搜索条件
时间
文件名
文件类型
-type 查找某一类型的文件,诸如: b - 块设备文件。 d - 目录。 c - 字符设备文件。 p - 管道文件。 l - 符号链接文件。 f - 普通文件。 s - socket文件
-
find / -name 'test.py'
-
find / -name test.py
-
find / -name *test.py
-
find / -name '*test.py'
前三种查找内容是一样的,租后一个通配符起效
-
find . -mmin -60 -print
当前目录下,60分钟以内修改文件
ln
Linux ln(英文全拼:link files)命令是一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同步的链接。
软链接:
- 1.软链接,以路径的形式存在。类似于Windows操作系统中的快捷方式
- 2.软链接可以 跨文件系统 ,硬链接不可以
- 3.软链接可以对一个不存在的文件名进行链接
- 4.软链接可以对目录进行链接
硬链接:
- 1.硬链接,以文件副本的形式存在。但不占用实际空间。
- 2.不允许给目录创建硬链接
- 3.硬链接只有在同一个文件系统中才能创建
-
ln -s log2013.log link2013
给文件创建软链接,为log2013.log文件创建软链接link2013,如果log2013.log丢失,link2013将失效:
-
ln log2013.log ln2013
给文件创建硬链接,为log2013.log创建硬链接ln2013,log2013.log与ln2013的各项属性相同
less
less 与 more 类似,less 可以随意浏览文件,支持翻页和搜索,支持向上翻页和向下翻页。
- /字符串:向下搜索"字符串"的功能
- ?字符串:向上搜索"字符串"的功能
- n:重复前一个搜索(与 / 或 ? 有关)
- N:反向重复前一个搜索(与 / 或 ? 有关)
- b 向上翻一页
- 空格键 滚动一页
- 回车键 滚动一行
mv
Linux mv(英文全拼:move file)命令用来为文件或目录改名、或将文件或目录移入其它位置。
-
mv source_file(文件) dest_file(文件)
将源文件名 source_file 改为目标文件名 dest_file -
mv source_file(文件) dest_directory(目录)
将文件 source_file 移动到目标目录 dest_directory 中 -
mv source_directory(目录) dest_directory(目录)
目录名 dest_directory 已存在,将 source_directory 移动到目录名 dest_directory 中;目录名 dest_directory 不存在则 source_directory 改名为目录名 dest_directory
rm
Linux rm(英文全拼:remove)命令用于删除一个文件或者目录。
- -i 删除前逐一询问确认。
- -f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。
- -r 将目录及以下之档案亦逐一删除。
touch
Linux touch命令用于修改文件或者目录的时间属性,包括存取时间和更改时间。若文件不存在,系统会建立一个新的文件。
$ ls -l testfile #查看文件的时间属性
#原来文件的修改时间为16:09
-rw-r--r-- 1 hdd hdd 55 2011-08-22 16:09 testfile
$ touch testfile #修改文件时间属性为当前系统时间
$ ls -l testfile #查看文件的时间属性
#修改后文件的时间属性为当前系统时间
-rw-r--r-- 1 hdd hdd 55 2011-08-22 19:53 testfile
which
Linux which命令用于查找文件。
which指令会在环境变量$PATH设置的目录里查找符合条件的文件。
[root@blue-ocean test]# which bash
/usr/bin/bash
cp
Linux cp(英文全拼:copy file)命令主要用于复制文件或目录。
- -f:覆盖已经存在的目标文件而不给出提示。
- -i:与 -f 选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答 y 时目标文件将被覆盖。
- -p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
- -r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
cp -p test.py test4.py
权限,修改时间都复制cp –r test/ newtest
使用指令 cp 将当前目录 test/ 下的所有文件复制到新目录 newtest 下
scp
Linux scp 命令用于 Linux 之间复制文件和目录。
scp 是 secure copy 的缩写, scp 是 linux 系统下基于 ssh 登陆进行安全的远程文件拷贝命令。
scp 是加密的,rcp 是不加密的,scp 是 rcp 的加强版。
-
本地复制到远程
scp local_file remote_username@remote_ip:remote_folder 或者 scp local_file remote_username@remote_ip:remote_file 或者 scp local_file remote_ip:remote_folder 或者 scp local_file remote_ip:remote_file
-
远程复制到本地
scp root@www.runoob.com:/home/root/others/music /home/space/music/1.mp3 scp -r www.runoob.com:/home/root/others/ /home/space/music/ # 从远程复制到本地,只要将从本地复制到远程的命令的后2个参数调换顺序即可