在linux中 表示________目录,linux命令_文件目录操作命令

linux命令--文件和目录操作命令

pwd

"print working directory" 打印工作目录的绝对路径

范例: 在bash命令行显示当前用户的完整路径

系统Bash命令行的提示符是由一个称为PSI的系统环境变量控制的。

修改PSI变量对应的值。

page 15

cd

cd - 切换到当前用户上一次所在的目录路径

tree

-d 只显示目录

-f 显示每个文件的全路径

-i 不显示树枝,常与-f参数配合使用

-L level 便利目录的最大层数,level为大于0的正整数

-F 不同文件类型结尾加不同符号

mkdir

-p 递归创建目录

-v 显示创建过程

-m 设置目录的默认权限

范例: 克隆目录结构

tree -fid --noreport olfboy >> ~/oldboy.txt

cd /tmp

mkdir -p `cat ~/oldboy.txt` # mkdir命令后可以接很多目录名来批量创建目录。

tree -d /tmp/oldboy

touch

有两个功能: 一是创建新的空文件;二是改变已有文件的时间戳属性。

touch stu{1..5} 批量创建文件

GNU/Linux 的文件有三种类型的时间戳

Access: 2018-07-17 14:05:03.361270580 +0800 # 最后访问文件的时间

Modify: 2018-07-17 14:04:59.344291470 +0800 # 最后修改文件的时间

Change: 2018-07-17 14:04:59.344291470 +0800 # 最后改变文件状态的时间

ls

-l 此处的时间属性列默认是显示的文件的最后一次修改时间。

显示完成时间属性的参数:

ls -l --time-style=long-iso

ls -l --time-style=long-iso --time=atime # 显示访问时间

mtime:最后修改时间 修改文件内容、文件的mtime会改变

ctime:状态改变时间 修改文件内容、移动文件或改变文件属性等,ctime会改变

atime:最后访问时间 查看文件内容时,atime会改变。

-F 目录的结尾都加上了/

ls -F | grep / 过滤目录

ls -F | grep -v / 过滤普通文件

加上* 表示可执行的普通文件

page 37

-d 只显示目录本身的信息

ls -ld dir1

ls别名

alias lst='ls -l --time-style=long-iso' # 配置命令别名

alias | grep lst # 检查命令别名是否生效

alias lst='ls -l --time-style=long-iso'

lst # 执行命令别名,检查效果。

查找最近更新过得文件

ls -lrt /etc/ -t按时间mtime排序;-r 倒叙;

ls -lrt /etc/ | tail -1 # tail -1 只显示一个文件

删除占用inode节点的垃圾:比如邮件

ls | xargs rm -f 如果文件特别多,rm -rf * 是无法删除的。

输出内容的属性解读:

ls -lhi

inode 索引节点编号

文件类型权限

硬链接个数

属主(属组)

文件或目录的大小

修改时间

名字

cp

-p 保持源文件的所有者、权限信息以及时间属性

-d 源文件是符号链接,仅复制符号链接本身,保留指向的目标文件或目录

-r 递归复制目录

-a 包含了-p、-d、-r

-i 提示用户缺

-t 可以颠倒顺序,cp -t 目标文件 源文件

cp覆盖文件之前不提示是否覆盖的几种方法:

1. 使用命令全路径

which cp # 查看cp的系统别名

/bin/cp file1 file2

2. 命令开头使用反斜线

\cp file1 file2

cp /etc/ssh/sshd_config{,.ori}

原理是bash对大括号的展开操作,展开成/etc/ssh/sshd_config /etc/ssh/sshd_config.ori 再传给cp命令

mv

alias mv # 查看mv的别名

rm

关于删除的经验:

1. 用mv代替rm,不要急着删除,而是先移动到回收站/tmp

2. 删除前务必备份。最好是异机备份。

3. 请用find替代rm

find ./ -type f -name "*.txt" -mtime +7 | xargs rm -f

4. 最多使用 rm -f 文件名。 rm -rf 误删目录时不会有提示。

5. 如果要使用通配符,最多使用rm -f ./* ,rm -rf /oldboy/ * ,会把当前目录下所有目录都删除。

6. 额外补充一点,要慎用 rsync --delete

rmdir

删除空目录

-p 子目录删除后其父目录也为空时,也一并删除。

ln,创建文件间的链接。

无参数, 创建硬链接

-s, 创建软连接(符号链接)

多个文件名指向同一个索引节点(inode),这种情况下的文件就称为硬链接。相当于文件的另一个入口。

ln -s 源文件 目标文件 # 目标文件不能事先存在,需要用ln命令创建。

readlink

-f 显示最后一个非符号链接文件

查看符号链接文件的内容

find 用于查找目录下的文件

-mtime

-n 表示文件更改时间距离现在n天以内

+n n天以前

n 距离现在第n天

-name 只支持*、?、【】等特殊通配符。

find /var/log/ -mtime +5 -name '*.log' # 在/var/log 目录下查找5天前以.log结尾的文件

find ./ -size +10M -size -20M # 查找大于 10M 小于 20M 的文件

find ./ ! -type d # !表示取反,查找不是目录的文件,注意!位置。

find正则表达式: find / -regex ".*find"

ls -l 放在-exec的选项中执行:

find ./ -type f -exec ls -l {} \;

;号表示结束,\转义,{}代指前边find查找到的内容。

使用xargs执行mv:

find . -name '*.log' | xargs -i mv {} dir2/

在/oldboy目录以及子目录下的所有以扩展名.sh结尾的文件中,做字符串替换,吧./hostlists.txt替换为../idctest_iplist。

find /oldboy -name '*.sh' -exec sed -i 's#./hostlists.txt#../idctest_iplist#g' {} \; # 文件多是效率低

find /oldboy -name '*.sh' | xargs sed -i 's#./hostlists.txt#../idctest_iplist#g'

sed -i 's#./hostlists.txt#../idctest_iplist#g' `find /oldboy -name '*.sh'` # 命令语句中如果有反引号,先执行反引号中的命令。

现在有 file1 file2 file3 这 3 个文件打包 . 打包文件为niliu.tar

#tar cvf niliu.tar file1 file2 file3

find ./ -type f -name 'test.txt' | xargs tar -zcvf oldboy01.tar.gz

find ./ -type f ! -name 'test1' | xargs rm -f

find /root -maxdepth 1 -type f ! -name '.*' # 只显示一级目录下的文件,不包含隐藏文件

清理指定的内容:

find . -type f | xargs sed -i '/*content*/d'

只保留7天的日志:

find . -type f -name 'access.log' -mtime +7 | xargs rm -f

将找到的文件移动到指定位置:

find . -name '*.log' | xargs -i mv {} dir2/

find . -name '*.log' | xargs mv -t dir2/ # 因为find找到的结果通过xargs会默认作为命令的目标,即mv dir2/ 目标,显然是错误的。

mv `find . -name '*.log'` dir2/

xargs

-i 以{}代替前边的结果

-p 提示让用户确认是否执行后边的命令,y执行,n不执行。

-n 指定每行的最大参数量,可以将标准输入的文本划分为多行,每行n个参数,默认空格分隔。

多行输入变单行:

xargs < test.txt

rename

rename from to file

from: 需要替换或处理的字符串

to: 替换后的内容

file: 待处理的文件,可以用* 匹配所有文件。

rename .jpg .oldboy *.jpg

basename

dirname

chattr 改变文件的扩展属性

chmod只是改变文件的读、写、执行权限,更底层的属性控制是chattr来改变的。

设置只能往文件追加内容,不能删除文件。

chattr +a test

给文件枷锁,使其只能是只读。

chattr +i test

lsattr

查看文件的扩展属性: lsattr file1.txt

查看目录的扩展属性:

chattr +i dir1 # 目录也可以加只读权限。

lsattr -d dir1

file

显示文件的类型

md5sum 计算和校验文件的md5值

-c 从指定文件中读取MD5校验值,并进行校验。

md5sum oldboy.txt > md5.log # 先生成校验文件

md5sum -c md5.log # 检查使用-c参数

chown 用于改变文件或目录的用户和用户组。

常用格式:

chown 用户 文件或目录 # 仅仅授权用户

chown :组 文件或目录 # 仅仅授权组

chown 用户:组 文件或目录 # 表示授权用户和组

其中的:可以用.来替代;

用户和组名,必须是实际存在的。

-R 递归改变目录的用户和用户组

chmod 改变文件或目录权限

-R 递归处理

文件、目录的读、写、执行权限说明: page85

chgrp

只用于更改文件的用户组,功能被chown取代了。

umask 显示设置权限掩码

文件权限计算: 666 - umask;

目录权限计算: 777 - umask;

umask 044

touch file2;ll -h file2 # 两条命令通过分号链接在一起,可以再一起执行。

Linux命令&lowbar;磁盘管理&lowbar;查看磁盘或目录的容量

软件环境:虚拟机VM12,Linux版本 CentOS 7.3 命令 df (disk filesystem) 用于查看已挂载磁盘的总容量.使用容量.剩余容量等,可以不加任何参数,默认以KB为单位显示 ...

Linux命令&lowbar;搜索文件

一.用which命令查找可执行文件的绝对路径 which命令用来查找PATH环境变量中出现的路径下的可执行文件. 二.用whereis命令查找文件 whereis命令通过预先生成的一个文件列表库查找与 ...

【Linux命令】文件目录管理命令7个(touch、mkdir、cp、mv、rm、dd、file)

目录 touch创建空白文档或设置文件时间 mkdir创建空白目录 cp复制文件或目录 mv剪切文件或重命名文件 rm删除文件或目录 dd按照指定大小和个数的数据库来复制文件或转换文件 file查看文 ...

Linux命令查找文件目录

座右铭:长风破浪会有时,直挂云帆济沧海. linux一般查看文件或者目录有几种方法. /查看文件类容--------cat/more/less/head/tail   只能查看文本型(txt) (1) ...

Linux 命令:文件目录操作与实例

来源: http://blog.51cto.com/yuanzhitang/2056994 本文介绍基础的文件操作:创建,移动,编辑,删除 文件和文件夹   命令与案例:   mkdir 创建目录 - ...

Linux命令&lowbar;用户身份切换

命令 su 格式为:su [ - ] username,后面可以跟 - ,也可以不跟. 普通用户的su命令不加username时,就相当于切换到root用户,反之亦然.当su 命令加上 - 后,会初始 ...

Linux命令&lowbar;用户和用户组管理

新增组的命令 groupadd 格式:groupadd [-g GID] groupname 如果不加-g选项,则按照系统默认的gid创建组.跟uid一样,gid也是从1000开始的. 我们也可以如下 ...

Linux学习笔记2——Linux中常用文件目录操作命令

ls 显示文件和目录列表 -l 列出文件的详细信息 -a 列出当前目录所有文件,包含隐藏文件 mkdir 创建目录 -p 父目录不存在情况下先生成父目录 cd 切换目录 touch 生成一个空文件 e ...

随机推荐

MongoDB的学习--explain&lpar;&rpar;和hint&lpar;&rpar;

Explain 从之前的文章中,我们可以知道explain()能够提供大量与查询相关的信息.对于速度比较慢的查询来说,这是最重要的诊断工具之一.通过查看一个查询的explain()输出信息,可以知道查 ...

linux常用命令之文件权限

CHGRP chgrp – change group ownership,改变组别的所有权 用法 chgrp 组别名 文件\目录名 选项 -R  (recursive)递归改变,将目录下所有的文件和目 ...

Symfony2创建基于域名的路由&lpar;原创翻译&rpar;

你可以匹配将要来到的请求以HTTP域名的方式 YAML方式 mobile_homepage: path: / host: m.example.com defaults: { _controller: ...

dom 中事件

阻止表单提交: function aa(){ return false; } function bb(event){ event.preventDefault(); } 事件不再派发:

jmake 编译当前目录c&sol;c&plus;&plus;单文件 指定文件 可加选项

基础版本的jmake是将所有当前文件夹下的C/C++文件生成单文件编译命令,并且jmake命令不可加选项. 现在做的改进是能在输入命令jmake时加上一些选项了,‘-’开头的选项加入到每个编译单文件的 ...

android性能优化优秀文章

郭霖最近整理的文章: 合理管理内存 分析编码过程中如何避免过多内存占用,以及如何实现高性能的内存使用. 尽可能使用intentService; 当界面不可见时释放内存; 当内存紧张时释放内存; 避免b ...

VS2013禁用Browser Link

禁用原因 VS2013新增的Browser Link功能虽然“强大”,但我并不需要. 但默认是开启的,会在页面中自动添加如下的代码,查看AJAX时造成很大的干扰.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/442902.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

获取10~99(包含10和99)的“总和”与“偶数”的个数

package Day03;/*** 第二题&#xff1a;* 获取10~99&#xff08;包含10和99&#xff09;的“总和”与“偶数”的个数&#xff0c;并在控制台打印输出*/ public class Day03_Demo02 {public static void main(String[] args) {// 获取10~99&#xff08;包含10和99&#x…

linux的进程pcd,LINUX下查看点云图————point cloud(.ply .vtk .pcd)

首先&#xff0c;你要确定点云的格式&#xff1a;.pcd(.vtk) 还是 .ply如果是.pcd(.vtk)&#xff0c;那么可以用pcl工具查看&#xff1a;1、安装pcl&#xff0c;官网链接点击打开链接sudo add-apt-repository ppa:v-launchpad-jochen-sprickerhof-de/pclsudo apt-get updatesud…

一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 * 第10次落地时,共经过多少米?第10次反弹多高?

package Day03;/*** 第三题&#xff1a;* 题目&#xff1a;一球从100米高度自由落下&#xff0c;每次落地后反跳回原高度的一半&#xff1b;再落下&#xff0c;求它在* 第10次落地时&#xff0c;共经过多少米&#xff1f;第10次反弹多高&#xff1f;* <p>* //第一次&…

linux 文件列添加字段,如何在linux中加入所需列的文件?

我有很多文件,如下面的目录“结果”58052 results/TB1.genes.results198003 results/TB1.isoforms.results58052 results/TB2.genes.results198003 results/TB2.isoforms.results58052 results/TB3.genes.results198003 results/TB3.isoforms.results58052 results/TB4.genes.r…

在数学中10!代表10的阶乘。既代表1*2*3*4....*10; * 现在要求编程求出8!。

package Day03;/*** 第四题&#xff1a;* 在数学中10!代表10的阶乘。既代表1*2*3*4....*10;* 现在要求编程求出8!。*/ public class Day03_Demo04 {public static void main(String[] args) {Jiecheng(5);}public static void Jiecheng(int a){int b 1;StringBuffer c new …

linux 监控命令行输入,监控 Linux 容器性能的命令行神器

ctop是一个新的基于命令行的工具&#xff0c;它可用于在容器层级监控进程。容器通过利用控制器组(cgroup)的资源管理功能&#xff0c;提供了操作系统层级的虚拟化环境。该工具从cgroup收集与内存、CPU、块输入输出的相关数据&#xff0c;以及拥有者、开机时间等元数据&#xff…

* 有1、2、3、4四个数字,能组成多少个互不相同且无重复数字的三位数? * 把这些数都输出出来,并且输出总共的个数。

package Day03;import java.util.ArrayList;/*** 第五题&#xff1a;* 有1、2、3、4四个数字&#xff0c;能组成多少个互不相同且无重复数字的三位数&#xff1f;* 把这些数都输出出来&#xff0c;并且输出总共的个数。* --------------------------------------------------* …

freebsd linux目录,FreeBSD和Linux如何互相访问文件系统

一、如何mount Linux Ext2文件系统经常有人在问&#xff0c;强大的FreeBSD为什么不能使用牛B的Linux ext文件系统呢&#xff1f;得到的回答通常是&#xff1a;“能&#xff0c;当然能了”。可是&#xff0c;太多的人习惯了使用mount_xxx来工作&#xff0c;这时会发现mount_只有…

在控制台输出九九乘法表

package Day03;/*** 第六题&#xff1a;* 分析以下需求&#xff0c;并用代码实现&#xff1a;* 在控制台输出九九乘法表* 打印格式如下&#xff1a;*/ public class Day03_Demo06 {public static void main(String[] args) {for (int a 1; a < 9; a) {for (int b 1; b <…

linux子系统停止运行,linux 系统部署spring boot 退出连接端后项目停止运行问题

准备&#xff1a;Linux系统、jar包、一个启动项目文件(starup.sh)文件名自定义1、首先需要编辑starup.sh文件&#xff0c;这里我也是从网上找了一个比较好的内容如下&#xff1a;#!/bin/bash#这里可替换为你自己的执行程序&#xff0c;其他代码无需更改APP_NAMEkaRen.jar#使用说…

数组循环简单打印输出

package Day03;/*** 第七题&#xff1a;* 需求&#xff1a;请输出下列的形状* ** *** **** ***** ******/ public class Day03_Demo07 {public static void main(String[] args) {int c 8; //循环次数for (int a 1; a < c; a) {System.out.print("第" a "…

linux程序mktime无权限,linux中mktime算法解析

Linux源码中的mktime算法解析我们知道&#xff0c;从CMOS中读出来的系统时间并不是time_t类型&#xff0c;而是类似于struct tm那样&#xff0c;年月日时分秒是分开存储的。那么&#xff0c;要把它转化为系统便于处理的time_t类型&#xff0c;就需要算法进行转换。我们都知道我…

.写一个方法 void printScore(int score),输出相应的等级。score代表分数,等级格式如下:

package Day04;/*** 二、* 1.写一个方法 void printScore(int score)&#xff0c;输出相应的等级。score代表分数,等级格式如下&#xff1a;* 不及格0<s<59, 及格 60<s<79&#xff0c;良好 80<s<89&#xff0c;优秀 90<s<100* 2.在main方法中实现进行测…

linux服务器怎么防,Linux服务器防攻击的各种方案

Linux服务器防袭击的各类计划信任入席站长都对服务器袭击很敏感&#xff0c;谁都经验过&#xff0c;这里就给大伙分享一下Linux服务器防袭击的各类计划。1、使用防火墙1、Linux自带防火墙Centos6下commandservice iptables stop //关闭防火墙chkconfig iptables off //永远关闭…

* 四、要求写一个方法:method。该方法要求传入一个数字n(n要小于10), * 该方法能够计算得到所有各位上的数字不超过n且每一位的数字都不重复的三位数的个数。

package Day04;/*** 四、要求写一个方法&#xff1a;method。该方法要求传入一个数字n&#xff08;n要小于10&#xff09;&#xff0c;* 该方法能够计算得到所有各位上的数字不超过n且每一位的数字都不重复的三位数的个数。* 并且在测试该方法。*/ public class Day04_Demo04 {…

linux 无线网卡连接网络连接不上去,【已解决】Ubuntu 10.04 无线网卡 无法连接

----------------------------------搬家声明------------------------------------------------------------------------搬家声明--------------------------------------【已解决】Ubuntu 10.04 无线网卡 无法连接【问题】新装的Ubuntu 10.04&#xff0c;其他一切正常&#…

Linux 软件包管理器的目的是什么,Linux软件包的管理--RPM包管理器

在Linux中如何安装、升级、卸载软件&#xff0c;是我们日常运维中重要的组成部分。接下来一CentOS6系统为例&#xff0c;讲解如何使用 RPM 包管理器&#xff0c;yum包管理器以及源码的方式来管理我们的软件包。一、相关的背景知识许多程序的源程序&#xff0c;例如使用C语言编写…

获取数组中元素值为偶数的累加和与元素值为奇数的累加和,并计算他们之间的差值

/*** 1.获取数组中元素值为偶数的累加和与元素值为奇数的累加和&#xff0c;并计算他们之间的差值* 1.定义int getNum(int[] arr)静态方法&#xff0c;该方法要求完成* 1.1 获取指定数组arr中元素值为偶数的累加和* 1.2 获取指定数组arr中元素值为奇数的累加和* 1.3 返回偶数累…

嵌入式linux mongodb,小白在Ubuntu安装mongoDB与mongo-c-driver

目的&#xff1a;本人从事嵌入式软件&#xff0c;项目中需要使用MongoDB&#xff0c;最终需要熟悉c-driver的API&#xff0c;小白在搭建环境有些浪费时间&#xff0c;故写这文章让与我同样状态的开发人员学习学习。在Ubuntu上的安装mongodb方法一&#xff1a;sudo apt-get ins…

获取键盘录入的5个int数,并存放到int数组arr中,输入前提示输入的是第几个值 * * 2.2 传递数组arr调用getNum(int[] arr)方法,获取返回值,并打印输出

package Day05;import java.util.Scanner;/*** 2.定义main方法&#xff1a;* * 2.1 获取键盘录入的5个int数&#xff0c;并存放到int数组arr中&#xff0c;输入前提示输入的是第几个值* * 2.2 传递数组arr调用getNum(int[] arr)方法&#xff0c;获取返回值&#xff0c;并打印…