这两天刚开始学习Linux,嘿嘿,仿佛在学习哲学啊!哈哈哈
学习Linux之前我们要问自己三个问题
我是谁?
我在哪里?
我在干什么?
Who?——>当前登录的用户
Where?——>路径
我要在哪儿创建文件?
命令 含义 使用方法
pwd 查看当前工作路径 pwd
cd 更改工作路径,切换路径(默认切换到当前用户家目录) cd 新路径
我要删除什么地方的什么文件?
我所要查看的文件在哪里?
What?——>操作命令
How?——>怎么做
理清思路,找到方法,做就对了
因为Linux是直接操作命令,我们就应该时不时问一下自己这三个问题!
1.首先,附上一张Linux目录图
我们知道Linux的目录结构为树状结构,最顶级的目录为根目录 /。
那我们首先要学会区分,
什么是绝对路径?
①:以“/”(根)开头的目录为绝对路径 例如: /tmp/aaa 这个目录。
②: “/” 根目录是linux操作系统最顶级的目录,没有任何路径比它还要靠前。
什么是相对路径?
①:路径是相对的,文件所在的路径是相对于当前所在路径而言的。
②:当前路径使用 .或./ 表示;当前目录的上一级目录使用 …或…/ 表示
③:当前用户家目录使用 ~ 表示;返回上次工作路径使用-表示
路径切换和查看的相关命令
命令 | 作用 |
---|---|
pwd | 查看当前工作路径 |
cd | 更改工作路径,切换路径(默认切换到当前用户家目录) |
2.文件操作管理
命令 | 作用 |
---|---|
ls | 列出目录内容 |
cp | 拷贝文件 |
mkdir | 创建目录 |
rm | 删除文件 |
touch | 创建文件 |
cat | 般查看小文件,从第一行到最后一行列出来 |
tac | 查看小文件,从最后一行到第一行列出来 |
less more | 查看大文件,q退出查看,可以搜索,建议less命令 |
head | 查看文件前10行 |
tail | 默认查看文件后10行 |
ldd | 来查看二进制的命令文件 |
mv | 移动或重命名文件 |
详情讲解:
1、判断文件类型(file)
文件类型 | 描述 |
---|---|
字符设备(c) | 所有的输入输出设备 |
块设备(b) | 所有的存储设备成为块设备文件 |
软连接文件(l) | 类似于windows下的快捷方式 |
目录设备(d) | 类似于windows下的文件夹 |
普通文件(f或者-) | 类似Windows下记事本、word等,可以使用相关命令进行编辑、查看文件内容 |
管道文件(p) | 简单理解为程序或进程之间通讯的一种方式 |
套接字文件(s) | 简单理解为程序或进程之间通讯的一种方式 |
2、列出目录内容(ls)
常用选项:
-a --all 列出所有文件,甚至包括文件名以圆点开头的默认会被隐藏的隐藏文件。
-l --directory 长列表显示
-h --human-readable 以人性化方式显示出来
-d 只列出目录名,不列其他文件
-t 按修改时间排序
-r --reverse 逆序排列
-S 按文件的大小排序
-i 显示文件的inode号(索引号)
-R 递归列出目录
-m 用都好显示出来
3、创建目录(mkdir)
常见选项
-p 级联创建
注意:是小写p
4、创建文件(touch)
注意:Linux下文件的命名规则
①:文件名严格区分大小写
②:文件名不能包含特殊符号,如(/或*等)
③:文件名最多可达255个字符
创建一个新的空文件(目标文件不存在)
5、查看文件内容
cat 命令:一般查看小文件,从第一行到最后一行列出来 常见选项: -n:显示行号 -A:显示控制字符,如换行符,制表符等( linux $ 和 Windows ^M$ )
tac 命令:一般查看小文件,从最后一行到第一行列出来
more和less 命令:一般查看大文件,q退出查看,可以搜索,建议less命令 head 命令:默认查看文件前10行, head -n 15或head -15 表示查看前15行 tail 命令:默认查看文件后10行, tail -n 15或tail -15 表示查看后15行;-f 表示动态查看
ldd 命令:一般用来查看二进制的命令文件
6、拷贝文件(cp)
常见选项
-a 递归拷贝文件,包括目录及文件属性信息
-r 拷贝目录
-p 拷贝文件包含文件的属性信息
-v 显示拷贝过程信息
用法:
# cp 选项 需要拷贝的文件 拷贝到哪里去
7、移动或重命名文件(mv)
用法:
移动文件的用户(不同路径下):# mv 需要移动的文件 移动到新的路径下
重命名的用法(相同路径下):# mv 原来文件的名字 新文件的名字
注意:老文件必须和新文件路径一样
8、删除文件(rm)
常用选项
-r 递归删除,一般用于删除目录
-f 直接删除,不提示
注意:使用rm之前一定要谨慎呐!一定要再三问自己三个问题:我是谁?我在哪里?我在干什么?
补充:
Linux如何获取帮助?
①:简约求帮助(help)
②:详细求帮助(man)
嘿嘿,我要跑去充电,过两天接下一篇啦~由于刚学习Linux,本章博客难免有些不足,恳请各位大佬不吝赐教!(╹▽╹)
Arch Linuxsudo pacman -S certbotDebian如果你运行Debian Buster或Debian testing/Sid,则可以通过以下命令轻松安装certbot软件包:sudo apt-get updatesudo apt-get install certbot如果你运行Debian Stretch,我们建议你使用Debian backports仓库中的软件包,首先...
BufferedReader和BufferedWriter简介为了提高字符流读写的效率,引入了缓冲机制,进行字符批量的读写,提高了单个字符读写的效率。BufferedReader用于加快读取字符的速度,BufferedWriter用于加快写入的速度BufferedReader和BufferedWriter类各拥有8192个字符的缓冲区。当BufferedReader在读取文本文件时,会先尽量从文件中读入字符数据并放满缓冲区,而之后若使用read()方法,会先从缓冲区中进行读取。如果缓冲区数据不足,才会再
这篇重点介绍C-Lib库及client和worker的开发,以0.14版libgearman for C来讲解Client APIclient初始化&析构gearman_client_st *gearman_client_create(gearman_client_st *client)void gearman_client_free(gearman_client_st
文章目录进程和计划任务管理一、查看进程程序和进程的关系程序进程二、查看进程信息查看进程信息ps查看进程信息top查看进程信息pgrep查看进程信息pstree三、进程进程的启动方式进程的前后台调度终止进程的运行四、计划任务管理计划任务管理at计划任务管理crontabcrontab任务配置的格式总结总结进程和计划任务管理一、查看进程程序和进程的关系程序保存在硬盘、光盘等介质中的可执行代码和数据静态保存的代码进程在CPU及内存中运行的程序代码动态执行的代码父、子进程每个程序可以创
1.Xaml代码<Window x:Class="Test.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
为什么80%的码农都做不了架构师?>>> ...
以下内容转载自totoro的文章《WebGL-Y轴翻转踩坑实录》作者:totoro链接:blog.totoroxiao.com/webgl-flipY…来源:blog.totoroxiao.com/著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。前言自定义栅格图层 是指用户可以通过特定软件,将自定义的图像按照上文所述的方式切割为瓦片,并生成图片,然后按照瓦片坐标拼接形成地图的图...
RFC5440 章节:PCReq消息 响应PCC 发送的PCReq的
Chrony是一个开源的自由软件,像CentOS7或基于RHEL 7操作系统,已经是默认服务,默认配置文件在 /etc/chrony.conf 它能保持系统时间与时间服务器(NTP)同步,让时间始终保持同步。相对于NTP时间同步软件,占据很大优势。其用法也很简单。Chrony有两个核心组件,分别是:chronyd:是守护进程,主要用于调整内核中运行的系统时间和时间服务器同步。它确定计算机增减时...
题意:给个a,b两个字符串,刷a,一次可以将一个区间刷成一个字母,求最小的操作次数将a串变为b串。深深的感受到被dp支配的恐惧,,,这道题真不好想。。。看题解看了好久才看明白(菜哭
在 UE 中,设计一个枚举类型可以用如下方式:UENUM(BlueprintType)enum class ESeriaPlayerState : uint8{ ENone = 0xFF UMETA(Hidden), EIdle = 0, EBattle = 1, //战斗状态 ENum UMETA(Hidden),};
[ 效果图回去放,代码在后面 ][ 用到的一些定义如果没有附代码可以随便写个看下效果,因为直接从项目中copy出来的,难免漏掉点点... ]首先,有几点需要注意:1.表头样式 [ DataGridColumnHeader ] 默认带分割线,但每列表头左右分割线都占1px,也就是说假如有三列:a. 表格最左、右边应该不需要分割线,但默认的有1pxb. 中间需要1px分割线,但默认有2px(相邻...