linux技能点 二
三. 文件操作:新增,删除,修改,查找,文件属性,文件内容查看,文件辅助命令,打包(解压缩),文件名注意事项。
新增:单文件,目录
单文件:1.touch :创建空文件 比如:touch hello.html
2.vi :文本编辑器 比如:vi book.doc
进入文本编辑后: i:插入insert; esc:退出,停止写;冒号:命令行模式;
q:退出编辑; w:保存 wq: 保存后退出
目录:mkdir: 创建目录
mkdir测试题; 6.创建一个空目录
mkdir dir
7.递归创建多个目录
mkdir -p a/b/c/d
8.创建权限为777的目录
mkdir -m 777 mode
9.创建新目录并显示创建信息
mkdir -v dir
删除:rmdir,rm
rmdir:删除空目录
rm:默认不会删目录。 rm test.php :删除文件需要确认,rm -f test.php:删除文件不确认,
rm -rfv ./test:删除当前test目录,并显示详细过程。rm -rf:强制删除目录
10.删除文件file,系统会先询问是否删除
rm file
11.强行删除file,系统不再提示
rm -f file
12.将test1子目录及子目录中所有档案删除
rm -rf test1/*
修改:mv,touch
mv:重命名或者移动文件 比如:mv login.html home.html 或者 mv home.html demo/
从demo目录移到root目录:root目录下:mv demo/home.html home.html
touch:修改文件的时间戳 比如:touch -a(-m)(-c) -t 201705011220.00 install.log
mv测试题
14.文件改名
mv oldName newName
15.将文件log1.txt,log2.txt,log3.txt移动到目录test3中
mv log[123].txt test3/
16.将文件file1改名为file2,如果file2已经存在,则询问是否覆盖
mv file1 file2
17.将文件file1改名为file2,即使file2存在,也是直接覆盖掉
mv -f file1 file2
18.移动当前文件夹下的所有文件到上一级目录
mv ./* ../
touch测试题
21.更新log.log的时间和log2012.log时间戳相同
touch -r log2012.log log.log
22.设定文件的时间戳
touch -t yyyymmddhhMM.ss file
查找:locate,which,whereis,find
locate:从系统文件名数据库中查找,如创建完新文件后用updatedb更新后再查找 用yum -y install mlocate 安装。
比如:locate "`pwd`/install"或者 locate ~/install 当前目录下以instal开头的文件
locate -i "`pwd`/install或者locate -i ~/install 当前目录下以install开头的文件,不区分大小写。
其中双引号加与不加效果一样
which:可执行的命令所在目录,查找的位置是¥PYTH中的目录
whereis:可执行的命令所在目录,帮助文件,配置文件等
find:按照某种方法进行磁盘查找
29.locate查找当前目录下以install开头的文件
locate ~/install
30.locate查找当前目录下以install开头的文件,不区分大小写
locate -i ~/install
31.which查找find命令所在目录
which find
32.whereis定位帮助命令find的位置
whereis find
文件属性:stat,file
stat:文件的详细属性 比如:stat abc.ph
file:文件类型 比如:file *查看当前目录下的的所有文件类型,file abc.sh查看单个文件的文件类型。
23.查看当前目录下的所有文件类型
file ./*
24.查看单个文件的文件类型
file fileName
文件内容查看:cat,head,tail,more,less,grep
cat:读文件内容 比如:cat test 普通输出;cat -n test开头显示行号;cat file1 file2>file合并两个文件为一;
cat -ns test 去空行加行号。
cut:在文件的每一行中提取片段。cat -d:做字段分隔符,cat -f:输出这些字段。
head:读文件的头n行 比如:head /etc/doc默认显示前10行;head -k /etc/doc显示开头前k行;
head -n 5/etc/doc显示前5行head -n -5除最后5行 外,其余全部显示;
head -c 100 /etc/doc显示前100个字符;head -c -100/etc/doc除最
后100个字符以外其余全部显示。
tail: 读文件的尾n行 比如:tail txt默认显示后10行;其他同head相似;tail -n +k txt显示第k行。
more:分页读取(有百分比) 比如:more text.php
less:分页读取(无百分比) 同上
grep:文件内容搜索????
文件辅助命令:ls,ll,cd,pwd,cp,ln
ls:查看目录内容 ls -a显示隐藏文件 ls -l 不隐藏的目录
ll:ls -a -l的缩写,显示详细信息
cd:切换目录 比如:cd /home/切换到home目录;cd /root/返回到home前的目录;cd ..
然后cd ./root/var,即切换到var目录, cd ~返回根目录
pwd:显示当前所在目录
cp:文件拷贝 比如:cp test.rb{,.bak}备份test.rb,并在尾部加上.bak的后缀
cp -p test.rb /home/text/将test.rb copy 到test目录,并且保留原文件的属性
cp -r dir/ /home/text/ 将dir 目录copy的test目录
cp -fr dir/* /home/text/将dir下的所有文件强制copy到text目录下
ln:创建链接文件 包括{硬链接文件(源文件的副本),符号链接文件(快捷方式)}
ln -s 1.txt (快捷方式名) 或ln -s 1.txt (目录名) 是软连接
ln 1.txt (目录名)/(快捷方式名) 是硬链接
cp:测试题
19.复制单个文件到目标目录,文件在目标文件中不存在
cp file2 dir/
20.复制单个文件到目标目录,文件在目标文件中存在
cp file2 dir/
ln测试题
硬链接: [root@rekfan.com test]# ls -il
1491138 -rw-r–r– 1 root root 48 07-14 14:17 file1
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2
[root@rekfan.com test]# ln file2 file2hand
[root@rekfan.com test]# ls -il
1491138 -rw-r–r– 1 root root 48 07-14 14:17 file1
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2hand
软连接: [root@rekfan.com test]# ls -il
1491138 -rw-r–r– 1 root root 48 07-14 14:17 file1
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2hand
[root@rekfan.com test]# ln -s file1 file1soft
[root@rekfan.com test]# ls -il
1491138 -rw-r–r– 1 root root 48 07-14 14:17 file1
1491140 lrwxrwxrwx 1 root root 5 07-14 14:24 file1soft -> file1
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2hand
pwd cd ls ll 的测试题:
1.用 pwd 命令查看默认工作目录的完整路径
pwd
2.用 pwd 命令查看链接文件的目录,和链接指向的实际目录
pwd
pwd -P
3.从当前目录跳至根目录(使用相对和绝对目录跳转)
cd /
cd ../../
4.列出/home/peidachang文件夹下的所有文件和目录的详细资料
ls -al /home/peidachang
ll -a /home/peidachang
打包(解压缩):gzip, bzip2,tar
tar -c:打包 tar -f:打包的包名 tar -z:压缩成.gz结尾的压缩包 tar -j :压缩成.bz2结尾的压缩包
tar -x:解压 打包压缩:tar -czf backup .tar .gz./* 解压:tar -xzf bavkup .tar .gz
50.将ar_test文件打包并且压缩,.gz
tar -czf ar_test.tar.gz ar_test
51.查看ar_test.tar.gz里面的文件信息
tar -tf ar_test.tar.gz
52.将ar_test文件打包并且压缩,.bz2
tar -cjf ar_test.tar.bz2 ar_test
53.将当前目录所有.jpg的文件打成一个名为all.tar的包
tar -cf all.tar ./*.jpg
54.将所有.gif的文件增加到all.tar的包里面去
tar -rf all.tar ./*.gif
55.更新原来tar包all.tar中logo.gif文件
tar -uf all.tar ./logo.gif
56.解出all.tar包中所有文件
tar -xf all.tar
文件名注意事项: 1.点:以.开头的文件是隐藏文件
2.文件名的大小写是敏感的
3.文件名不能包含特殊字符……&¥@¥
4.文件名通配符*?[][^]
*:任意字符
?:任意单个字符 比如:file[]
[]:匹配[]中的任意一个字符 比如:file[0-9]
[^]:匹配除[^]之外的任意字符 比如:file[^0-9]
5.文件类型 1.普通文件 -(f); 2.目录:d; 3.符号链接:l; 4.字符设备:c; 5.块设备:b;
6.套接字:s。
linux技能点 二的更多相关文章
- Linux设备管理(二)_从cdev_add说起
我在Linux字符设备驱动框架一文中已经简单的介绍了字符设备驱动的基本的编程框架,这里我们来探讨一下Linux内核(以4.8.5内核为例)是怎么管理字符设备的,即当我们获得了设备号,分配了cdev结构 ...
- Linux基础练习题(二)
Linux基础练习题(二) 1.复制/etc/skel目录为/home/tuer1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限. [root@www ~]# cp -r ...
- Linux网络编程(二)
Linux网络编程(二) 使用多进程实现服务器并发访问. 采用多进程的方式实现服务器的并发访问的经典范例. 程序实现功能: 1.客户端从标准输入读入一行文字,发送到服务器. 2.服务器接收到客户端发来 ...
- 运维之Linux基础(二)
运维之Linux基础(二) 1. file 命令基期用法 2. 文件系统 Linux的文件系统结构是树状结构,所有的文件都在/root跟目录下 /boot:系统启动相关的文件, 如:内核.initrd ...
- 聊聊我怎么系统学习Linux技能并快速提高的
随着电子信息科技时代的发展,学会使用计算机在我们的生活中成为了必不可少的一项技能.而作为计算机中的三大操作系统之一的Linux更是饱受计算机爱好者们的喜爱.今天我们就来和大家一起聊一聊Linux操作系 ...
- Linux学习之二-Linux系统的目录结构
Linux学习之二-Linux系统的目录结构 在Linux的根目录下,有很多的目录,但是需要记住,对于Linux而言,一切皆文件.因此此处的目录也是文件.用ls / 命令就能看到根目录下的各类不同的目 ...
- Linux学习笔记(二) 文件管理
了解 Linux 系统基本的文件管理命令可以帮助我们更好的使用 Linux 系统,以下介绍几个常用的文件管理命令 1.pwd pwd 是 Print Working Directory 的简写,用于显 ...
- linux技能点 一
vmware workstation:安装时永久性密钥 5A02H-AU243-TZJ49-GTC7K-3C61N linux技能点:系统管理,网络管理,文件操作,用户管理,文件权限,软件管理 ...
- Linux命令-文本编辑(二)
Linux命令-文本编辑(二) Linux mtype命令 mtype为mtools工具指令,模拟MS-DOS的type指令,可显示MS-DOS文件的内容. 语法: mtype [-st][文件] 参 ...
随机推荐
- 什么时候会进行 SpringMVC重定向保存参数(FlashMap)?
SpringMVC重定向保存参数(FlashMap):两种情况会保存参数: 1. 当前视图为RedirectView,也即是说当前请求为重定向请求. org.springframe ...
- django在centos生产环境的部署
# 安装数据库和web服务器nginx # yum install –y nginx mariadb-server # 安装虚拟环境 pip install virtualenv pip instal ...
- debian8 vga 文本模式下出现闪屏
这种问题是因为 grub 里面关于 分辨率大小不对的问题. 在 debian 里面,在文件 /boot/grub/grub.cfg 里面可以添加 vga 参数配置. 如下: 在 kernel 启动参数 ...
- QT5 编译提示 cannot find GL/gl.h ubuntu16.04
安装软件: sudo apt-get install mesa-common-dev sudo apt-get install libgl1-mesa-dev libglu1-mesa-dev
- continue & tag in GO
Go语言中 continue 语句可以结束当前循环,开始下一次的循环迭代过程,仅限在 for 循环内使用,在 continue 语句后添加标签时,表示开始标签对应的循环,例如: package mai ...
- spring data jpa使用@Transactional注解开启事务后失败不回滚
如题,在数据库批量操作方法上使用@Transactional注解,其中一条数据抛出异常了,却死活不回滚. 批量操作方法是公有的,spring也是默认支持事务的,排除代码层面问题,那么就看看数据库是否支 ...
- Synchronize深入
前言: synchronize会使用,但是对于深层次的知识,不是很清楚,故整理一篇博客. 简介: 能够保证在同一时刻,最多只有一个线程执行该端代码,以达到保证并发安全效果. 两种用法: 对象 ...
- (.Net) NLog 记录日志功能
https://codeload.github.com/NLog/NLog/zip/v4.6.6 https://nlog-project.org/?r=redirect Logger logger ...
- iOS - 获取当前时间日期星期几
//获取当前时间日期星期 - (NSString *)getCurrentTimeAndWeekDay { NSArray * arrWeek=[NSArray arrayWithObjects:@& ...
- dotnet core 3.0 swagger 显示枚举描述
上一篇net core 2.2 swagger的枚举描述,core 3.0 需要升级swagger到5.0rc版,配置需要做些修改,swaager启用了OpenApi标准,之前的枚举描述方法也失效了. ...