一、引言

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. [Noip复习知识点][个人向]Zackzh

    只是列列一些要复习的,努力复习吧,有种noip退役的赶脚. 一.模拟 (这你也不会?退役吧) 二.DP 1.基础dp 2.区间dp 3.状压dp 4.树形dp 6.概率(期望)dp 7.环形dp 8. ...

  2. Error Code: 2006 - MySQL 鏈嶅姟鍣ㄥ凡绂荤嚎

    将sql文件导入到mysql时候,就一直报这个错误. 我试过网上各种方法都行不通. 最后将以下一句运行了一下就能够了,并且没有重新启动mysql. SET GLOBAL max_allowed_pac ...

  3. sdk manager 创建的虚拟机启动的时候总是在Android字样解决

    一直显示Android字样.仅仅须要删除文件夹下的snapshots.img 找到sdk的文件夹下的\tools\lib\emulator,然后删除上面的文件snapshots.img就可以,我的sd ...

  4. 分享一个非常屌的eazyui二开demo

    eazyui二开Demo非常吊,里面各种非常吊的样例,最喜欢的是 多文件进度条上传,一次可多选,还有流程,还有文本编辑器  非常简洁的 不像一些官网各种复杂的东西.主要为自己保留一份, 在线demo在 ...

  5. LoadRunner系列之—-03 用Java Vuser协议编写接口测试脚本

    待测试接口用java语言实现,且项目中调用该接口需要用专门的jar包.这种情况可以用Java Vuser协议实现接口调用脚本,类似java代码. 代码样例如下: /* * LoadRunner Jav ...

  6. Ubuntu16.04下安装Tensorflow CPU版本(图文详解)

    不多说,直接上干货! 推荐 全网最详细的基于Ubuntu14.04/16.04 + Anaconda2 / Anaconda3 + Python2.7/3.4/3.5/3.6安装Tensorflow详 ...

  7. Android NDK编程浅入深出之--Android.mk

        Android.mk Android.mk是一个向Android NDK构建系统描写叙述NDK项目的GUN Makefile片段.它是每个NDK项目的必备组件. 构建系统希望它出如今jni子文 ...

  8. 发现个delphi调用vc写的Dll中包括pchar參数报错奇怪现象

    发现个delphi调用vc写的Dll中包括pchar參数奇怪现象 procedure中的第一行语句不能直接调用DLL的函数,否则会执行报错,在之前随意加上条语句就不报错了奇怪! vc的DLL源代码地址 ...

  9. OpenvSwitch代码分析之bridge和port

    ovs-vsctl add-br br0 会在数据库里面加入新bridge的信息ovs-vsctl add-port br0 eth0 会在数据库里面加入新的port信息 void bridge_ru ...

  10. createElement与innerHtml性能比較

    js中.动态加入html的方法大致就是两种,一种是document.createElement等方法创建,然后使用Element.appendChild加入,或者是使用Element.innerHTM ...