linux_文件操作

1.查看当前目录下的文件

ls

ls -l 显示所有文件及其详细信息,包括权限、连接数量、用户、组、大小、日期、文件名。

ls -hl 和上面一样,但是文件大小不是字节,会显示多少K,更直观。

ls -a 显示所有文件,包括隐藏文件(以.开头),其中有两个特殊文件:...分别表示当前目录和上级目录

 

2.用户当前所在目录

Pwd 输出用户当前所在目录

pwd -P 输出用户当前实际所在目录(软连接时有用)

 

3.查看某一目录占用空间

du -sh /dir

 

 

4.切换目录

cd

如,切到根目录:

cd /

切到etc目录

cd /etc

回到上级目录

cd ..

 

5.创建目录

mkdir

如,在当前目录下创建一个名为config的目录

mkdir config

目录中带子目录,如,创建aa/bb/cc三级目录

mkdir -p aa/bb/cc

 

6.删除目录

rmdir

如,删除上面刚创建的目录

rmdir config

注:如果目录中有文件是删除不了的。

使用如下命令:

rm -rf config

(其中-f是不提示直接删除的意思,-r为递归)

 

7.创建文件

touch

如:创建aa.txt

touch aa.txt

echo

如:创建cc.txt,并添加内容:12345

echo “12345” > cc.txt

 

8.复制文件

cp命令

如,当前目录下有文件aa.txt,有子目录testdir

aa.txt复制到子目录testdir中:

cp aa.txt testdir

参数

-i

cp -i aa.txt testdir 加参数-i,如果有同名文件,会提示是否覆盖。

-a

保留文件原有的属性。即,如果不使用-a,则复制完的新文件的创建者为当前用户,如果加了参数-a后,文件的创建者还是原作者。

 

9.复制文件到另一电脑

scp

复制文件

如:将当前目录下的log.txt复制到192.168.202.128机器/opt/log下。

scp log.txt root@192.168.202.128:/opt/log/

 

复制目录

:需要将当前目录下的storm目录整个复制到192.168.202.128机器/opt下。

/opt目录目前是空的,复制的时候会将storm目录一起复制过去:

scp -r storm root@192.168.202.128:/opt/

 

10.查看文件类型

file aa.txt

 

11.删除文件

rm

如删除aa.txt

rm aa.txt 会弹出一个提示问你是否删除。

参数:-f

不想有提示,直接删除,使用参数 -f

rm -f aa.txt

参数:-r

递归删除的意思

 

rm –rf xxx.log(删除某一文件)

rm –rf *(删除当前目录下所有文件)

 

12.移动文件

mv

如,将当前目录中的bb.txt移动到子目录config

mv bb.txt config

mv命令还可以用来修改文件名,如将bb.txt改为bc.txt

mv bb.txt bc.txt

 

13.修改文件内容

echo

echo “123” > con.txt

123写入con.txt文件。

echo “456” >> con.txt

456追加到con.txt中。

 

 

vi

如:vi bb.txt

就可以在bb.txt中输入内容了。

添加完后输入shift+进入命令模式

wq 保存并退出

q!强制退出。

 

vim

vim hosts

进入了文件内部,此时按下i键,就可以进行修改了。

修改完后按esc退出编辑状态。

输入shift+进入命令模式

wq 保存并退出

q!强制退出。

 

 

14.查看文件

cat

如:cat bb.txt

就可以查看bb.txt的文件内容了。

参数:-n

显示每行的行号。

cat -n bb.txt

 

more

如:more xxx.log

显示第一页,空格向下翻,q退出

查看时还可以查找,输入/string,就可以查看文件中包含string的地方。

 

less

如:less xxx.log

more差不多,more只能向后翻页,less可以向前翻页。

使用方向键向上或向下看。

 

head

只显示前几行,默认10

如:head -20 xxx.log

只显示前20

 

tail

只显示后几行,默认10

head差不多,一个是前面,一个是后面。

如:tail -30 xxx.log

tail -n 200 xxx.log

 

vi

vi是修改文件的命令,也可以用来查看。

vi xxx.logshift+进入命令模式)

命令模式输入set nu 进入按页看)

G定位到最后一页

Ctrl+B(上一页

Ctrl+F(下一页)

命令模式输入:q!退出)

 

15.符号链接

符号链接又叫软链接

ln -s <带路径的文件名或目录名> <linkfile>

相当于创建一个快捷方式

当进入符号链接的目录时,使用ll可以看到真实目录下的所有文件。

但是使用pwd时显示的是符号连接的路径。

如果使用pwd -P时,显示的是真实的路径。

 

16.硬链接

ln <带路径的文件名> <带路径的目录>

如:在dir1目录下有一个文件abc.txt,创建一个硬连接到dir2中。

ln /usr/local/dir1/abc.txt /usr/local/dir2

这样在dir1dir2两个目录中都有abc.txt,而且是同一个文件。

也可以ln abc.txt def.txt

即第二个文件名称不一样,但是内容是同一个东西。

 

硬链接和软链接的区别

Linux中每个文件都有一个唯一的index

硬链接:创建一个硬链接后,新文件的属性还是一个文件,和原文件的链接数都变为2。两文件的index相同,即相当于多了一个文件,但只是一个指针指向原文件。

软链接:创建一个软链接后,新文件的属性就是一个超链接文件,和原文件有着不同的index。可以理解为创建了一个新的文件,其内部记录的是另一个文件的路径。

移动原文件后,硬连接不受影响(因为它们在系统中就是同一个index),软链接找不到文件(因为它记录的是原文件路径)

 

17.解压文件

解压zip文件:

/opt/solr-5.5.3.zip

cd /opt

unzip solr-5.5.3.zip

将其解压到当前目录

 

解压gz文件:

tar -zxvf zookeeper-3.4.8.tar.gz

tar -zxf zookeeper-3.4.8.tar.gz


18.查找文件

find   path   -option   [   -print ]   [ -exec   -ok   command ]   {} \;

path: find命令所查找的目录路径。例如用.来表示当前目录,用/来表示系统根目录。

-printfind命令将匹配的文件输出到标准输出。

-execfind命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为'command' { } \;,注意{ }\;之间的空格。

-ok: 和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。

 

#-print 将查找到的文件输出到标准输出

#-exec   command   {} \;      —–将查到的文件执行command操作,{} \;之间有空格

 

-name   filename             #查找名为filename的文件

如:在当前目录查找XXX.log

find . -name xxx.log

在全目录下查找:

find / -name xxx.log


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值