前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux简单命令练习及总结

Linux简单命令练习及总结

作者头像
海盗船长
发布2020-08-27 17:26:09
7560
发布2020-08-27 17:26:09
举报
文章被收录于专栏:基础知识文章基础知识文章
  1. 将之前所创建的目录和文件全部清理掉
代码语言:javascript
复制
$ rm [-f-i-r-v][dirName/dir] 
//-f 即使文件属性为只读(即写保护),亦直接删除
//-i 删除前逐一询问确认
//-r 删除目录及其下所有文件
  1. 在家目录下创建 ~/workspace/cmd 目录以及 ~/workspace/tmp/test 目录(什么是家目录?)
代码语言:javascript
复制
$ mkdir -p ~/workspace/cmd
$ mkdir -p ~/workspace/test
//mkdir [选项] 目录名
//-p, --parents  可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录;
  1. 进入 ~/workspace/cmd 目录,创建一个空文件my.txt
代码语言:javascript
复制
$ cd ~/workspace/cmd
$ touch my.txt
//cd 目录名		:改变工作目录,将当前工作目录改变到指定的目录下。
//touch [选项]  文件:更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。
//touch 选项:
//-a   或--time=atime或--time=access或--time=use只更改存取时间。
//-c   或--no-create  不建立任何文档。
//-d  使用指定的日期时间,而非现在的时间。
//-f  此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。
//-m   或--time=mtime或--time=modify  只更改变动时间。
//-r  把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
//-t  使用指定的日期时间,而非现在的时间。
  1. 使用重定向>>与echo命令向my.txt文件写入 hello world 数据
代码语言:javascript
复制
$ echo "hello world" >> my.txt
  1. 将my.txt复制一份到~/workspace/tmp/test目录下
代码语言:javascript
复制
cp my.txt ../../cmd
//cp [选项] 源文件或目录 目标文件或目录
//-f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在
//-i 或 --interactive 覆盖文件之前先询问用户
//-r递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理
//-R 或 --recursive递归处理,将指定目录下的文件及子目录一并处理
  1. 将/workspace/tmp/test目录移动剪切到/workspace/下
代码语言:javascript
复制
$ mv ~/workspace/tmp/test ~/workspace
//mv [选项] 源文件或目录 目标文件或目录
//-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
//-i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!
  1. 清空~/workspace/下的空目录
代码语言:javascript
复制
$ rmdir tmp
//rmdir [-p][dirName] 
//-p 当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除。
  1. 刷新~/workspace/cmd/my.txt文件的时间属性与家目录时间相同
代码语言:javascript
复制
$ cd cmd
$ touch my.txt .
  1. 打印~/workspace/cmd/my.txt文件全部内容到终端显示上
代码语言:javascript
复制
$ less /etc/passwd
pageup 和 pagedown上下翻页
// less [参数] 文件
//-i  忽略搜索时的大小写
//-N  显示每行的行号
//字符串:向下搜索“字符串”的功能
//?字符串:向上搜索“字符串”的功能
//n:重复前一个搜索(与 / 或 ? 有关)
//N:反向重复前一个搜索(与 / 或 ? 有关)
//q:quit 
  1. 分页显示/etc/passwd的内容到显示终端上
代码语言:javascript
复制
$cat /etc/passwd
//cat [选项][文件] 
//-b 对非空输出行编号
//-n 对输出的所有行编号
//-s 不输出多行空行
  1. 在分页显示的内容中匹配root字符
代码语言:javascript
复制
/root
  1. 显示/etc/passwd文件的前五行数据
代码语言:javascript
复制
$ head -n 5 /etc/passwd
// head [参数]... [文件]... 
//-n<行数> 显示的行数
  1. 显示/etc/passwd文件的后五行数据
代码语言:javascript
复制
$ tail -n 5 /etc/passwd
// tail[必要参数][选择参数][文件]
//-f 循环读取
//-n<行数> 显示行数
  1. 动态打印显示~/workspace/cmd/my.txt的最后一行数据
代码语言:javascript
复制
$ tail -f my.txt
$ echo "hello world" >> my.txt
// tail[必要参数][选择参数][文件] 
//-f 循环读取
//-n<行数> 显示行数
  1. 显示/etc/passwd文件中包含Root字符串的行,并显示行号忽略大小写
代码语言:javascript
复制
$ grep -i -n root /etc/passwd
//grep [选项] 搜寻字符串 文件
//-i :忽略大小写的不同,所以大小写视为相同
//-n :顺便输出行号
//-v :反向选择,亦即显示出没有 '搜寻字符串' 内容的那一行
  1. 查找~/workspace/目录下名字包含my字符串的文件
代码语言:javascript
复制
$ find ~/workspace/ -name "my*"
// find pathname -options
//-name   按照文件名查找文件。
  1. 查找~/workspace/目录下最后一次修改时间在10分钟以内的文件
代码语言:javascript
复制
$ find ~/workspace/ -mmin -10
  1. 显示系统时间的时间戳,日历
代码语言:javascript
复制
$ date +%s
$ cal

> date显示 date 指定格式显示时间: date +%Y:%m:%d  date 用法:date [OPTION]...
> [+FORMAT] 
> 1.在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中常用的标记列表如下 有一个文件共有100行内容,请取出第50行内容<br> seq 1 100 > test # 生成1到100的序列装入test 方法1
 head -n50 test > tmp #将前50行装入临时文件tmp tail -n1 tmp #得到中建行 方法2 head -n50
 test | tail -n1  比特科技 %H : 小时(00..23)  %M : 分钟(00..59)  %S : 秒(00..61)
 %X : 相当于 %H:%M:%S  %d : 日 (01..31)  %m : 月份 (01..12)  %Y : 完整年份
 (0000..9999)  %F : 相当于 %Y-%m-%d 
> 2.在设定时间方面 date -s //设置当前时间,只有root权限才能设置,其他只能查看。 date -s 20080523 //设置成20080523,这样会把具体时间设置成空00:00:00  date -s 01:01:01 //设置具体时间,不会对日期做更改
 date -s “01:01:01 2008-05-23″ //这样可以设置全部时间 date -s “01:01:01 20080523″
这样可以设置全部时间 date -s “2008-05-23 01:01:01″ //这样可以设置全部时间 date -s
 “20080523 01:01:01″ //这样可以设置全部时间
> 3.时间戳
时间->时间戳:date +%s
时间戳->时间:date -d@1508749502
Unix时间戳(英文为Unix epoch, Unix time, POSIX time 或 Unix timestamp)是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒。
  1. 以“月-日 时:分”格式显示当前系统时间
代码语言:javascript
复制
$ date +"%m-%d %H:%M"
  1. 修改文件~/workspace/cmd/my.txt的权限为651(代表什么权限?)
代码语言:javascript
复制
$ chmod 0651 my.txt

> chmod
功能:设置文件的访问权限
格式:chmod [参数] 权限 文件名
常用选项:
R -> 递归修改目录文件的权限
说明:只有文件的拥有者和root才可以改变文件的权限
chmod命令权限值的格式
 用户表示符+/-=权限字符
+:向权限范围增加权限代号所表示的权限
-:向权限范围取消权限代号所表示的权限
=:向权限范围赋予权限代号所表示的权限
用户符号:   
u:拥有者
g:拥有者同组用
o:其它用户
a:所有用户
  1. 如何使系统默认创建文件的权限为666? 记得修改回来
代码语言:javascript
复制
$ umask 0000
> umask
功能:
查看或修改文件掩码
新建文件夹默认权限=0666 
新建目录默认权限=0777 
但实际上你所创建的文件和目录,看到的权限往往不是上面这个值。原因就是创建文件或目录的时候还要受到
umask的影响。假设默认权限是mask,则实际创建的出来的文件权限是: mask & ~umask 
格式:umask 权限值 
说明:将现有的存取权限减去权限掩码后,即可产生建立文件时预设权限。超级用户默认掩码值为0022,普通用
户默认为0002。
  1. 修改~/workspace/tmp/目录的权限为其他用户可以进入但是不能查看其中内容也不能在其中创建文件
代码语言:javascript
复制
$ cd ~/workspace/
$ mkdir tmp
$ chmod 0751 tmp
  1. 修改~/workspace/cmd/目录权限为可以浏览或进入或创建文件,但是不能删除别人的文件
代码语言:javascript
复制
$ chmod +t cmd
  1. 打印/etc/passwd文件的第五行数据
代码语言:javascript
复制
$ head -n 5 /etc/passwd | tail -n 1
  1. 熟练使用tab键的自动补全功能
代码语言:javascript
复制
tab等键的使用
//[Tab]按键---具有『命令补全』和『档案补齐』的功能
//[Ctrl]-c按键---让当前的程序『停掉』
//[Ctrl]-d按键---通常代表着:『键盘输入结束(End Of File, EOF 戒 End OfInput)』的意思;另外,他也可以用来取代exit
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-10-11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
命令行工具
腾讯云命令行工具 TCCLI 是管理腾讯云资源的统一工具。使用腾讯云命令行工具,您可以快速调用腾讯云 API 来管理您的腾讯云资源。此外,您还可以基于腾讯云的命令行工具来做自动化和脚本处理,以更多样的方式进行组合和重用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档