一、引言

Linux对java开发来说也是一项必备的技能,因为项目基本都是部署在Linux操作系统的服务器中,虽然项目不一定需要我们去部署,但不管是自己测试环境部署,还是一些生产环境中日志的查看,Linux操作系统都是免不了要去接触的。对于我们开发来说懂得基础的命令及简单shell脚本编写是必须的。

跳过Linux介绍和安装,我们直接从基础命令开始。

二、Linux目录

在Linux世界中,一切皆是文件,Linux文件采用级层式的树状目录结构,在此结构中根目录是“/”,我们可以看看根目录下面有哪些目录,使用

cd / --进入根目录
ll --查看目录接口

这些命令我们后面再学习,结果如图

结构整理如下:

目录结构作用

目录 说明
bin 存放二进制可执行文件(ls,cat,mkdir等)
boot 存放用于系统引导时使用的各种文件
dev 用于存放设备文件
etc 存放系统配置文件
home 存放所有用户文件的根目录
lib 存放跟文件系统中的程序运行所需要的共享库及内核模块
mnt 系统管理员安装临时文件系统的安装点
opt 额外安装的可选应用程序包所放置的位置
proc 虚拟文件系统,存放当前内存的映射
root 超级用户目录
sbin 存放二进制可执行文件,只有root才能访问
tmp 用于存放各种临时文件
usr 用于存放系统应用程序,比较重要的目录/usr/local 本地管理员软件安装目录
var 用于存放运行时需要改变数据的文件

我们需要关注的几个目录

  1. home: 存放我们用户文件的目录。

  2. etc :存放配置文件的目录,当我们需要修改配置文件的时候就需要进入该目录。

  3. usr/local :安装自己的程序,必须放在该目录中

  4. var:存在数据的目录

三、操作文件目录

了解完了大体的目录结构,下面就开始一些操作文件目录的操作,其实就要记住和熟悉命令的过程,每个命令都去敲敲,无非是一个熟能生巧的过程。

3.1 ls

ls 显示文件和目录列表,另外还有两个可选参数:

  • -l 列出文件的详细信息

  • -a 列出当前目录所有文件,包含隐藏文件

ls命令

我们切换至home 目录

ls -a

在linux中以.开头的是隐藏文件

3.2 mkdir

mkdir 创建目录命令,一个可选参数-p:父目录不存在情况下先生成父目录

在我们直接增加父目录时,不存在父目录就会出错

正确的做法:

3.3 cd

cd 是切换目录,这个命令很简单,后面加上切换的目录地址即可

3.4 touch

touch 生成一个空文件

3.5 echo

echo 生成一个带内容文件

格式: echo hello world >1.txt 创建文件并写入(一个尖括号)

echo linux >>1.txt 追加文本内容 (两个尖括号)

3.6 cat

cat 显示文本文件内容,我们来显示刚刚创建的文件内容

3.7 cp

cp 复制文件或目录

格式:cp 原始文件 复制到的目录位置

3.8 rm

rm 是删除文件,有两个可选参数,

  • -f 强制删除文件或目录

  • -r 同时删除该目录下的所有文件

当我们删除的文件是一个目录是,就必须强制的删除文件,并且删除目录下的所有文件

所以从删库到跑路的命令就是:rm -fr /*

3.9 mv

mv 移动文件或目录,相当于剪切命令

3.10 find

find 在文件系统中查找指定的文件,有一个可选参数- name 即为文件的名称,如果不加在这个参数,直接查询文件是查询不到的,只会查找目录

3.11 grep

grep 在指定的文本文件中查找指定的字符串

3.12 tree

tree 用于以树状图列出目录的内容,默认的版本应该是没有这个命令,需要后面自主下载

3.13 pwd

pwd 显示当前工作目录,这个无需讲了

3.14 more

more 分页显示文本文件内容,当文件内容过长时,我们可以使用此命令,然后按住enter键往下浏览

3.15 head

head 显示文件开头内容

3.16 tail

tail 显示文件结尾内容,有一个可选参数,-f 跟踪输出,什么意思呢?当我们执行这个命令是,执行过后并不会立即结束,而是卡住状态,当文件被修改时,会自动的输出修改的内容

Linux之旅第一篇-目录结构及操作目录的更多相关文章

  1. Django之模型层第一篇:单表操作

    Django之模型层第一篇:单表操作 一 ORM简介 ​ 我们在使用Django框架开发web应用的过程中,不可避免地会涉及到数据的管理操作(如增.删.改.查),而一旦谈到数据的管理操作,就需要用到数 ...

  2. Linux/Ubuntu tree 命令以树形结构显示文件夹目录结构

    1.安装命令工具 sudo apt-get -y install tree 2.可以查看关于tree命令的帮助信息 $ tree --help usage: tree [-adfghilnpqrstu ...

  3. Linux命令【第一篇】

    1.创建一个目录/data 记忆方法:英文make directorys缩写后就是mkdir. 命令: mkdir /data 或 cd /;mkdir data #提示:使用分号可以在一行内分割两个 ...

  4. Linux系统的目录结构及常见目录总结

    Linux系统的目录结构(必须掌握的内容) 所有目录只有一个顶点/(根),所有目录的起点. 只有一棵树 Linux的目录结构也是有规律的,而且也是按照类别组织的. 应用程序 /usr/bin 数据文件 ...

  5. Linux系统的目录结构及各目录作用

    使用tree命令查看Linux目录结构,这个命令默认是没有安装的,需要手动安装一下. [root@xuexi xf]# mount /dev/sr0 /media/ mount: /dev/sr0 写 ...

  6. Linux系列:快捷键、目录结构、用户目录

    一.快捷键 1.历史命令 查看历史命令:history [root@centos-master ~]# history 1 2020-10-25 21:03:39 2 2020-09-17 20:43 ...

  7. Android系统源代码目录结构 “Android源代码”“目录结构”

    在讲述Android源码编译的三个步骤之前,将先介绍Android源码目录结构,以便读者理清Android编译系统核心代码在Android源代码的位置. Android源代码顶层目录结构如下所示: ├ ...

  8. Maven目录结构, war目录结构

    Maven目录结构 src/main/java 存放java servlet类文件 src/main/webapp 存放jsp文件 war目录结构 Maven web项目目录结构

  9. 使用Asp.Net Core MVC 开发项目实践[第一篇:项目结构说明]

    先从下图看整体项目结构: Mango.Manager: 为后台管理项目 Mango.Web: 为前台项目 Mango.Framework.Core: 为常用的基础操作类项目 Mango.Framewo ...

随机推荐

  1. eclipse中安装maven插件

    原文:http://blog.csdn.net/wode_dream/article/details/38052639 当自己越来越多的接触到开源项目时,发现大多数的开源项目都是用maven来够建的. ...

  2. 通过k8s(Kubernetes)搭建jmeter的压测环境master-slave架构,实现弹性伸缩

    在k8s上部署jmeter的mater和slave,根据压测需求动态增减master和slave节点数量,即可以完成压测任务,又可以是资源利用最大化 https://blog.kubernauts.i ...

  3. 小心入怀Yaf

    http://www.laruence.com/2015/05/14/3021.html, 鸟哥文章 看了这个文章,更加要小心的对待 Yaf Yar 框架了. 不正确 glib 有一定的了解进来就是深 ...

  4. linux 中安装JDK

    一般公司差点儿相同全部的server都是搭建在Linux上面的,所以这就免不了.(要是使用Java语言)要在Linux上面布一套JDK也就是Java虚拟机环境. 以下.我详细说一下安装过程,以及可能出 ...

  5. sqlserver中All、Any和Some用法与区别

    转自:http://blog.csdn.net/gyc1105/article/details/8063624 SQLServer中有三个关键字可以修改比较运算符:All.Any和Some,其中Som ...

  6. 原始的解释器模式(Interpreter Pattern)

    解释器模式的定义(现实项目中非常少遇到,因此直接理论先...) 解释器模式是一种依照规定语法进行解析的方案,在如今项目中使用较少,其定义为:给定一门语言,定义它的方法的一种表示,并定义一个解释器,该解 ...

  7. 【git体验】git原理及基础

    原理:分布式版本号控制系统像 Git,Mercurial,Bazaar 以及 Darcs 等,client并不仅仅提取最新版本号 的文件快照,而是把原始的代码仓库完整地镜像下来. 这么一来.不论什么一 ...

  8. GCC 编译详解 (转)

    GNU CC(简称为Gcc)是GNU项目中符合ANSI C标准的编译系统,能够编译用C.C++和Object C等语言编写的程序.Gcc不仅功能强大,而且可以编译如C.C++.Object C.Jav ...

  9. Repeater控件前台复杂逻辑判断

    虽然现在开发大都是前后台ajax的方式,但是还有部分项目用后台cs代码+服务器控件开发的方式,小弟今天就遇到了一个 repeater显示列表,有一个字段是state状态,数据库里面存的是0 1 2类似 ...

  10. ES6 模块化(Module)export和import详解 export default

    ES6 模块化(Module)export和import详解 - CSDN博客 https://blog.csdn.net/pcaxb/article/details/53670097 微信小程序笔记 ...