Linux学习(1)-常用快捷键、文件管理和查询

有话要说

为什么要用Linux?要用Linux的原因太多,想说说不完啊。
如果你说用Linux只是为了装逼,那证明你真的还很菜。不排除有装逼了因素,那也只占非常少的比例,可以忽略不计。
我们反问一下,为什么不用Linux呢?回答无非就是:没有图像界面、操作太复杂、和我以前的使用习惯不一样、学习新的系统需要学习成本。
其实只是我们排斥未知的恐惧,从心底里面抵触,而找的各种理由。要想做好一件事,我们会去找各种方法。不想做一件事,我们会去找各种理由。
.net core的推出绝对不是让我们在Windows上玩玩的。特别是多年经验的.net er,需要快速适应这种变化,不然这是个危险的信号啊。
我们正在进行一场革命,革的不好就没命了。微软都已经拥抱Linux了,你还有在坚持什么呢?(当然,如果你只是想玩.net framework的话,当我没说。

进入Linux你将进入另一个世界,下面开始我们Linux的学习吧~

Shell应用技巧,常用快捷键

Shift + insert             #粘贴
Ctrl + insert              #复制
Tab【按键】或者 Ctrl + i   #命令补齐 【这个快捷键太有用了,这不就是linux下的智能提示么】
Ctrl + w                   #删除前一个单词
Ctrl + u                   #删除光标前全部字符
Ctrl + k                   #删除光标后全部字符
Ctrl + d                   #删除光标所在字符
Ctrl + y                   #将删除的字符粘出来
Ctrl + a                   #将光标移动到行首
Ctrl + e                   #将光标移动到行尾
← 或者 ctrl + b            #光标左移动
→ 或者 Ctrl + f            #光标右移动
↑ 或者 Ctrl + p            #显示上一条命令
↓ 或者 ctrl + n            #显示下一条命令
ctrl + s                   #暂时冻结输入
ctrl + q                   #解冻(解冻后会自动输入之前的输入)
Ctrl + l                   #清屏
Ctrl + c                   #退出正在的执行命令或另起一行
Ctrl + d                   #退出登录
Ctrl + z

帮助命令

man (帮助命令)

原意:manual
语法:man [命令或配置文件]
首先我们学习linux命令太多,不可能记住所有命令。那么这个man命令就是个很好的帮助命令。
示例:
man 1 passwd  # 1查看命令帮助 ,1默认可以省略
man 5 passwd  # 5查看配置文件帮助
#只要按下/,光标就会跑到这个地方来,你就可以开始输入搜寻字串(n继续往下查询,N方向查询)
#q退出、空格向下翻页、pgup向上翻页

info (和man差不多)

原意:information
语法:info [任何关键字]

whatis (查询基本信息,等效于man -f)

#mandb 更新whatis数据库

help (帮助)

可以查询一些shell内置命令帮助,如 cd、pwd

--help (获取选项信息【常用】)

示例:
[[email protected] ~]# cat --help
用法:cat [选项]... [文件]...
将[文件]或标准输入组合输出到标准输出。
  -A, --show-all           等于-vET
  -b, --number-nonblank    对非空输出行编号
  -e                       等于-vE
  -E, --show-ends          在每行结束处显示"$"
  -n, --number             对输出的所有行编号
  -s, --squeeze-blank      不输出多行空行
  -t                       与-vT 等价
  -T, --show-tabs          将跳格字符显示为^I
  -u                       (被忽略)
  ...
有了这个命令,我们学习起来就有了诀窍。  

alias (别名)

查看别名:alias
命令别名:alias mycp=‘cp‘
这样起的别名只在当前窗口有效,如果要是命令长期有效则要修改配置文件.bashrc,在/root目录下。
这样就很方便我们定制自己的个性命令了。比如重启supervisorctl reload这个命令记不住,太长了。我们可以别名alias reloadsupervisorctl=‘supervisorctl reload‘。这样我们只要记住reload然后按tab键就可以自动补全了。

文件管理、文件搜索命令

cd (切换目录)

原意:change directo
语法:cd [目录]

pwd (显示当前目录)

原意:print working directory
语法:pwd

特殊目录

. 代表此层目录(cd ./dotnet 和 cd dotnet等效)
.. 代表上一层目录
- 代表前一个工作目录(上次执行cd前的目录)
~ 代表“目前使用者身份”所在的主文件夹(和直接执行cd等效)
~account 代表 account 这个使用者的主文件夹( account是个帐号名称)
示例:
cd ~   #和直接cd 等效
cd ..  #返回上层目录
cd -   #回到上次执行cd执行前的目录

ls (显示目录文件)

- 原意:list
- 语法:ls [-ald] [文件或目录]

touch (创建空文件)

语法:touch [文件名]
查看文件的时间信息:
modification time ( mtime):内容数据变更时
status time ( ctime):状态改变时
access time ( atime) :该文件的内容被取用时
示例:
[[email protected] dotnet]# ls -l dotnet              #查看dotnet文件的创建时间(默认就是mtime)
-rwxr-xr-x. 1 1002 27 105664 7月  21 07:16 dotnet
[[email protected] dotnet]# ls -l --time=atime dotnet #查看dotnet文件的读取时间
-rwxr-xr-x. 1 1002 27 105664 8月  19 17:31 dotnet
[[email protected] dotnet]# ls -l --time=ctime dotnet #查看dotnet文件的状态更新时间
-rwxr-xr-x. 1 1002 27 105664 8月  15 20:23 dotnet

mkdir (创建新目录)

语法:mkdir [目录名]

cp (复制文件或目录)

语法:cp -r [原文件或目录][目的目录]
示例:
[[email protected] ~]# cp mytest.txt mytest2.txt #复制mytest.txt 到 mytest2.txt
[[email protected] ~]# cp project project2       #复制文件夹(如果文件夹里面有内容赋值失败)
cp: 略过目录"project"
[[email protected] ~]# cp -r project project2    #复制文件夹 (需要带上 -r参数,递回持续复制)

mv (移动文件或重命名)

原意:move
语法:mv [源文件或目录 ][目的目录]

rm (删除文件)

原意:remove
语法:rm -rf [文件或目录]   #r是删除目录 f是不需要确认
示例:
[[email protected] ~]# rm mytest2.txt     #删除文件mytext2.txt(会默认给出提示)
rm:是否删除普通文件 "mytest2.txt"?y
[[email protected] ~]# rm -f mytest.txt   #删除文件不需要提示(带上 -f参数)
[[email protected] ~]# rm project2        #不能删除目录
rm: 无法删除"project2": 是一个目录
[[email protected] ~]# rm -rf project2    #删除目录需要带上-r(-r递回删除、带上f是不需要确认提示,如果一百个文件,提示一百次会疯的)
[[email protected] project2]# rm System.Xml*                #删除System.Xml开头的文件
rm:是否删除普通文件 "System.Xml.ReaderWriter.dll"?y
rm:是否删除普通文件 "System.Xml.XDocument.dll"?y

cat (显示文件内容)

原意:Concatenate
语法:cat [文件名]
示例:
[[email protected] ~]# cat mytest.test     #查看文件mytest.test
[[email protected] ~]# cat -n mytest.test  #-n显示行号 (类似nl命令)
这个命令有个缺点,就是显示全部信息,如果内容过多,浏览就不方便了。

more (分页显示文件内容)

语法:more [文件名]
 空格或f显示下一页
 回车显示下一行
 q退出
示例:
[[email protected] ~]# more 三体.txt
输入/  然后输入关键字比如“三”
/三
...跳过
相关文章

《三体3》未获雨果奖 ...
《三体》电影确定上映日程,...
#把带“三”的行都搜索出来了。

less (分页查询,比more更加强大)

more 只能翻下一页,less可以上下翻页。
参数:
[pagedown]:向下翻动一页;
[pageup] :向上翻动一页;
/字串 :向下搜寻“字串”的功能;
?字串 :向上搜寻“字串”的功能;
n :重复前一个搜寻 ( 与 / 或 ? 有关!)
N :反向的重复前一个搜寻 ( 与 / 或 ? 有关!)
g :前进到这个数据的第一行去;
G :前进到这个数据的最后一行去 ( 注意大小写) ;
q :离开 less 这个程序;
示例:
[[email protected] ~]# less  三体.txt
输入/  然后输入关键字比如“三” 可以高亮关键字。

head (查看文件的前几行)

语法:head -num [文件名]
示例:
[[email protected] ~]# head -n 5 三体.txt   #显示前五行
[[email protected] ~]# head -n 5 三体.txt   #不显示后五行

tail (查看文件的后几行)

语法:tail -num [文件名]

ln (产生链接文件)

原意:link
语法:ln -s [源文件] [目标文件]
示例:
ln -s /home/testfile /home/testfile.soft  #创建文件的软链接testfile.soft
ls -s /home.testfile /home/testifle.hard  #创建文件的硬链接testfile.hard

which (显示系统命令所在目录)

语法:which [命令名称]
示例:
[[email protected] dotnet]# which ifconfig
/usr/sbin/ifconfig

find (查找文件或目录)

语法:find [搜索路径][搜索关键字]
-a 逻辑与 -o 逻辑或  -name文件名 -size文件大小 -cteime文件修改时间
示例:
find /etc -name init    #查找目录下名字是inti的文件
find /etc -size +204800 #查找目录下大于100M的文件
find /etc -ctime -1     #查找24小时内被修改过属性的文件和目录
find mytest -exec ls -l {} \; #查看当前目录mytest文件夹下的文件执行 ls -l 命令。 -exec {}\; 是固定格式。
find mytest -name F* #查找mytest文件夹下以F开头的文件
find mytest -name F??? #查找mytest文件夹下以F开头的并且文件名只有四个字母

locate (寻找文件或目录)

用法:locate [搜索关键字]
示例:
[[email protected] dotnet]# locate dotnet    #查询所有包含dotnet的文件和目录
[[email protected] dotnet]# locate Dotnet    #查询不到,因为区分大小写
[[email protected] dotnet]# locate -i Dotnet #查找所有路径或文件名包含dotnet关键字文件路径,且不区分大小写
[[email protected] dotnet]# locate -ic Dotnet#查询搜索结果的数量
3661
说明:
查询缓存数据库里查询(可以使用updatedb命令 [建立目录文件的数据库],默认每天更新一次)

grep (在文件内容中搜索匹配的行并输出)

用法:grep [指定字符串][源文件]
示例:
grep 我 testfile #搜索当前目录下的文件testfile中包含“我”的行

其他

输入/输出重定向

- > 输出重定向
示例: ls -l > mytest.txt #将当前目录的所以文件信息写入mytest.txt文件下。
- < 输入重定向
示例:wall <  mytest.txt  #将mytest.txt文件里面的内容广播(wall广播命令)
- 2> 错误重定向
示例:ggg 2> err.txt      # err.txt将记录错误信息 (ggg是个错误命令)

history (显示历史命令)

| (管道)

ls查询到的文件可能很多,如果我们想要分页浏览,我们可以使用管道命令
ls -l /etc | more              #分页查看etc目录下的文件
ls -l /etc | grep init         #查看etc目录下文件名包含init的文件
ls -l /etc | grep init | wc -l #查看etc目录下文件名包含init的文件的个数

命令连接符

 ;
示例:cd /home ; ls #跳转到home目录并且查看里面的文件(就算是错误的命令也会继续执行后面的命令。)
 &&
示例:ggg && ls #不会查看目录下的文件(中间有错误的命令存在就不会执行后面的命令)
 ||
示例:ggg || ls #会执行查看目录下的文件(遇到可以执行成功的命令就会停止执行后面的命令)

命令替换符

用法:命令1 `命令2`
示例:
ls -l `which cd` #查看cd命令的文件信息(which定位命令的位置)

netstat

netstat -lntp  #查看监听(Listen)的端口
netstat -antp  #查看所有建立的TCP连接
netstat -tunlp #查看端口使用情况 (如  netstat -tunlp | grep 3306 查看3306端口是否被使用)
netstat -n | grep tcp | grep 80 | wc -l #监控网络客户连接数

负载信息

ps -eLf | grep dotnet | wc -l           #监控dotnet线程数
mpstat       #不但能查看所有CPU的平均信息,还能查看指定CPU的信息。
top -u mysql #查看使用情况 按键盘数字“1”,可监控每个逻辑CPU的状况 (http://blog.csdn.net/dxl342/article/details/53507673)
df -lh            #显示所有硬盘的使用状况

firewall防火墙

firewall-cmd --zone=public --add-port=80/tcp --permanent     #开放80端口
firewall-cmd --zone=public --remove-port=80/tcp --permanent  #关闭80端口
firewall-cmd --reload                                        #重新载入,使其生效
systemctl restart firewalld                                  #重启防火墙
firewall-cmd --zone=public --list-ports                      #查看防火墙开启的端口
http://www.cnblogs.com/moxiaoan/p/5683743.html

其他

- su #用户切换
[[email protected] dotnet]# su BennyZhao
[[email protected] dotnet]$ su root
- 图形界面与字符界面切换
init 5 #切换到图形界面
init 3 #切换到命令行界面
- 安装rz
yum install lrzsz #安装rz和sz命令
- curl访问
curl              #访问
注意:除了 / 之外,所有的符号都可以为文件或文件夹命名。命名大小写敏感。
yum list installed | grep dotnet  #查找已经安装的程序
yum remove dotnet                  #卸载安装的程序

推荐

原文地址:https://www.cnblogs.com/coder-wzr/p/10229145.html

时间: 2024-10-10 19:59:42

Linux学习(1)-常用快捷键、文件管理和查询的相关文章

linux学习笔记二:硬盘信息查询

在linux管理中,硬盘管理是很重要的一部分.包括阵列,分区,逻辑卷等操作,在对硬盘操作前,需要充分的了解硬盘的信息.常用的硬盘查询有以下几种: 1.df  查看文件系统空间使用情况: linux-lszd-db:~ # dfFilesystem     1K-blocks     Used Available Use% Mounted on/dev/sda6      809262496 37615092 770825244   5% /udev             8076412    

Linux终端最常用快捷键

终端最常用快捷键 新建终端窗口: crtl+shift+N 终端的漂移/切换:shift+左右箭头 挂 起:crtl+s 解除挂起:crtl+q 清 屏:crtl+l 命令行光标移动: crtl+a 移动到命令行首 crtl+e 移动到命令行尾 crtl+u 从当前光标所在位置向前清除命令 crtl+c 中断操作 tab 命令补全/路径补全/文件名补全: 一次tab是补全 两次tab,列出相关信息 拷贝粘贴: 左键选中(复制) 左右键同时点击(粘贴) alt+tab:切换当前的运行程序 上下箭头

linux shell 命令常用快捷键

下面是一些shell的常用快捷键,快捷键玩熟悉了在一定程度上是可以提高工作效率滴… Ctrl + a 切换到命令行开始 Ctrl + e 切换到命令行末尾 Ctrl + l 清除屏幕内容 Ctrl + u 清除光标之前的内容 Ctrl + k 清除光标之后的内容 Ctrl + h 类似于退格键 Ctrl + r 在历史命令中查找 (这个非常好用,输入关键字就调出以前的命令了) Ctrl + c 终止命令 Ctrl + d 退出shell Ctrl + z 转入后台运行.. alt键比较少用,因为

Linux的一些常用快捷键

查看端口是否启用telnet localhost 8888 启动一个端口,平且通过这个端口传数据nc -l localhost 9999 </etc/hosts查看ss -anput | grep 9999 查看设备被哪个进程使用lsof - /dev/sdb1 常用快捷键Ctrl+l = clearCtrl+aCtrl+eCtrl+w = 整行删除Ctrl+R = history!cat 执行上一次的cat命令!数字 执行历史的第几条命令 ^上一条命令^本次执行的命令^vim^cat //查看

Linux学习笔记——目录、文件管理命令及常用选项

目录管理命令: ls . cd . pwd  .mkdir. rmdir .tree 文件管理命令: touch. stat .file. rm .cp. mv .nan 目录管理 #ls  列出列表 格式ls [OPTION]... [FILE]... -h (hurman)单位转换 -a (all)显示以.开头的文件 (显示隐藏文件) .当前目录 ..表示父目录 -A  不显示当前目录. 和父目录.. ,其他全部显示 -d (diectory)显示目录属性 -i  (id)  显示i节点号

Linux运维学习笔记-常用快捷键及vi、vim总结

vim是vi的增强版,vim完全兼容vi 原文地址:https://www.cnblogs.com/tcheng/p/8595307.html

Linux学习之常用技巧

▌基础 学习 Bash .你可以man bash来看看bash的东西,并不复杂也并不长.你用别的shell也行,但是bash是很强大的并且也是系统默认的.(学习zsh或tsch只会让你在很多情况下受到限制) 学习 vim .在Linux下,基本没有什么可与之竞争的编译辑器(就算你是一个Emacs或Eclipse的重度用户).你可以看看<简明vim攻略>和 <Vim的冒险游戏>以及<给程序员的Vim速查卡>还有<把Vim变成一个编程的IDE>等等. 了解 ss

Linux学习_4(常用命令)

基本命令 1.1 ls 列出文件 -a 列出隐藏文件,文件中以"."开头的均为隐藏文件,如:~/.bashrc -l 列出文件的详细信息 -R 连同子目录中的内容一起列出 用ls -l命令显示的信息中,开头是由10个字符构成的字符串,其中第一个字符表示文 件类型,它可以是下述类型之一: - 普通文件 d 目录 l 符号链接 b 块设备文件 c 字符设备文件 s socket文件,网络套接字 p 管道 后面的9个字符表示文件的访问权限,分为3组,每组3位.第一组表示文件属主的权 限,第二

Linux学习笔记——常用命令(一)

Linux分区的四个基本步骤: 1)分区:硬盘划分为逻辑分区 2)格式化逻辑分区(写入文件系统) 3)分区设备文件名:给每个分区定义设备文件名 4)挂载点:给每个分区分配挂载点 注意事项: 1)必须分区: /   /boot  /swap 2)一块硬盘最多4个分区,最多1个扩展分区,扩展分区又可以包含多个逻辑分区 设置密码原则: 1)复杂性 2)易记性 3)时效性 目录usr(unlix software resource) 防火墙:用来过滤,制定一系列的规则(IP.MAC.端口等) Linux