本文整理自 My 5 Favorite Linux Shell Tricks for SPEEEEEED (and efficiency) 。这里列出的小技巧可以让你在使用shell的时候更加高效~
十年的宿豫网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。全网整合营销推广的优势是能够根据用户设备显示端的尺寸不同,自动调整宿豫建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联从事“宿豫网站设计”,“宿豫网站推广”以来,每个客户项目都认真落实执行。
设想这样一个场景:你输入了 apt-get update ,然后发现需要 sudo 权限才能运行。除了通常的按下向上箭头,然后移动到行首添加 sudo 再运行,你可以输入
按下回车后,shell会生成 sudo apt-get update ,也就是说, !! 被替换为上一条命令的内容。
翻译过来可以理解为截断命令,并且重新粘贴截断内容。这个操作类似于emacs中的快捷键。我们可以使用 ctrl + K 来截断光标后方的命令内容,然后用 ctrl + Y 来重新粘贴截断的内容。
例如:
注意 ctrl + Y 可以多次粘贴。
而如果想要截断光标之前的内容,可以用 ctrl + U 。(事实上很多emacs的快捷键都可以直接在shell环境下使用)
在开发和调试过程中,我们常常会使用 tail -f 命令来追踪日志的输出。这种方式有一个问题,即我们无法回溯更早的日志内容。因此我推荐之后都使用 less +F 命令来追踪日志内容。这个命令同样是从文件的尾部开始输出,然后在文件内容更新时输出更新内容。在使用这个命令时,可以按下 ctrl + C 组合键,然后用上下箭头就可以遍历整个文件了。之后按下 shift + F 来回到尾部追踪的模式。
ctrl + x + e (按住ctrl,然后先按下x,再按下e),就可以弹出一个编辑器来编辑你当前的命令。
设想如下的情形:
我们要对一个host进行多次操作,而每次我们都要重新输入一遍这个host的!这在调试和维护过程中是非常繁琐的。 alt + . 就为我们提供了一个非常便捷的功能!按下这个命令可以粘贴上一条命令的参数。
linux常用命令如下:
1、查看内核版本:uname -a。
2、控制台-》图形界面:init 5或者startx。
3、图形界面-》控制台: init3或者直接注销。
4、如何查看ip地址:ifconfig。
5、配置ip:ifconfig eth0 ip地址。
6、重启:reboot 或者 shutdown -r now。
7、普通用户切换到系统用户:su。
8、注销用户指令:logout。
linux的学习技巧:
如果你想系统的学习Linux,你必需清楚的认识到这一点。如果你真正想系统的学习linux,想用Linux有所作为,那么请忘记Windows的思维方式,思想性的转变比暂时性的技术提高更有用, 而思想上的改变往往是受到我们行动所影响的,有不懂的问题就自己思考,查资料, 实在不会再去找别人的电脑去查,这样就加深了我每次对问题的理解,慢慢感受和习惯Linux的操作方式。
1、统计文件的行数
pre
[root@test59 dbgen]# wc -l partsupp.tbl
80000000 partsupp.tbl
[root@test59 dbgen]# wc -l orders.tbl
150000000 orders.tbl
/pre
wc 还有其他的一些参数:
语法:wc [选项] 文件…
说明:该命令统计给定文件中的字符数、字数、行数。如果没有给出文件名,则从标
准输入读取。wc同时也给出所有指定文件的总统计数。字是由空格字符区分开的最大字符串。
该命令各选项含义如下:
这些选项可以组合使用。
输出列的顺序和数目不受选项的顺序和数目的影响。
总是按下述顺序显示并且每项最多一列。
行数、字数、字符数、文件名
如果命令行中没有文件名,则输出中不出现文件名。
另外针对命令也可以增加wc -l,例如查看一下当前80端口的连接情况:
netstat -an|grep 80|wc -l
2、用户如果出现资源不够,执行su - user也出错:
su: cannot set user id: Resource temporarily unavailable
需要检查/etc/security/limits.conf
pre
vi /etc/security/limits.conf
/pre
分布式环境下资源使用的很多,默认设置远远不够
3、简单的针对某个ip进行iptables设置:
iptables -I INPUT -s 121.0.0.34 -j DROP
4、设置密码的安全策略
Debian、Ubuntu 或 Linux Mint 系统上:
pre
root@deepin155:~# vi /etc/pam.d/common-password
password requisite pam_pwquality.so enforce_for_root retry=3 minlen=8 ucredit=-1 lcredit=-1 dcredit=-1 difok=3
/pre
它表示密码必须至少包含一个大写字母(ucredit),一个小写字母(lcredit),一个数字(dcredit)
ocredit:标点符号
difok:字符种类
minlen:密码长度
CentOS、Fedora、RHEL 系统上:
pre
vi /etc/pam.d/system-auth
password requisite pam_cracklib.so try_first_pass retry=3 type=
/pre
设置密码过期期限
编辑 /etc/login.defs 文件
pre
PASS_MAX_DAYS 99999
PASS_MIN_DAYS 0
PASS_WARN_AGE 7
/pre