2017年5月22日星期一

linux快捷键

bash:

    c-a:光标-->行开始处

    c-e:光标-->行末尾处

    c-u:删除行首-->光标处

    c-d:退出终端

立刻杀死X server(即当前桌面):

alt+PrintScreen+K

 2016年10月20日00:45:04

突然又发现一个快捷键,在终端下,如果弹出很多页,这时候按PageDown/PageUp是没有用的,不会像浏览器里面进行滚动,但是按Shift+PageUp/PageDown就可以了!!!
Alt+Ctrl+T:呼出Console

Firefox快捷键 :Ctrl+Shift+Y:代替原来的Ctrl+J
Firefox:general.SmoothScroll.mouseWheel 调整为false,这样滚动页面时就没有抖动的感觉了,不过会一次只动3行吧差不多。
Sunpinyin:选词快捷键为:PageDown或者PageUp(而不是+或-)

tar文件解压缩命令 :tar xvzf filename.tar

zip解压为:unzip filename.zip

7z解压为:解压为当前文件夹:7z e filename.7z

                   解压为当前文件名的目录下:7z x filename.7z

                   (可以使用7z解压非7z格式的压缩包(archive),但是比如tar.gz格式的需要解压两遍,而tar只需要解压一遍

mv:移动命令(不是mov,否则会找不到 的)

不需要使用sougou,fcitx输入法 ,然并卵

linux下安装jdk很简单的:

去官方网站下载最新的jdk的gz压缩包,然后解压缩,之后放进opt/Java目录中(没有可以mkdir(创建命令))

之后只需要在usr/profile中添加如下几行:

export JAVA_HOME=/opt/Java/jdk你的文件夹
export JRE_HOMES=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

提权:chmod +x filename





 :n1,n2 co n3:将n1行到n2行之间的内容拷贝到第n3行下
:n1,n2 m n3:将n1行到n2行之间的内容移至到第n3行下
:n1,n2 d :将n1行到n2行之间的内容删除
:w :保存当前文件
:e filename:打开文件filename进行编辑
:x:保存当前文件并退出
:q:退出vi
:q!:不保存文件并退出vi

rm命令:

rm [选项] 文件…

3.命令参数:

    -f, --force    忽略不存在的文件,从不给出提示。

    -i, --interactive 进行交互式删除

    -r, -R, --recursive   指示rm将参数中列出的全部目录和子目录均递归地删除。

    -v, --verbose    详细显示进行的步骤

       --help     显示此帮助信息并退出

       --version  输出版本信息并退出

mkdir命令:
语法:mkdir [选项] dir-name
说明:该命令创建由dir-name命名的目录。要求创建目录的用户在当前目录中(dir-name的父目录中)具有写权限,并且dirname不能是当前目录中已有的目录或文件名称。
命令中各选项的含义为:
- m 对新建目录设置存取权限。也可以用chmod命令设置。
- p 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录。

cp命令:
参数:
     -a 或 --archive     此参数的效果和同时指定"-dpR"参数相同
     -b 或 --backup      删除、覆盖目的文件先备份,备份的文件或目录亦建立为符号链接,并指向源文件或目录链接的源文件或目录。假如没有加上这个参数,在复制过程中若遇到符号链接,则会直接复制源文件或目录
     -f 或 --force       强行复制文件或目录, 不论目的文件或目录是否已经存在
     -i 或 --interactive 覆盖文件之前先询问用户
     -l 或 --link        对源文件建立硬链接,而非复制文件
     -p 或 --preserve    保留源文件或目录的属性,包括所有者、所属组、权限与时间
     -P 或 --parents     保留源文件或目录的路径,此路径可以是绝对路径或相对路径,且目的目录必须已经丰在
     -r                  递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理
     -R 或 --recursive   递归处理,将指定目录下的文件及子目录一并处理
     -s 或 --symbolic-link  对源文件建立符号链接,而非复制文件
     -S <备份字尾字符串> 或 --suffix=<备份字尾字符串> 用"-b"参数备份目的文件后,备份文件的字尾会被加上一个备份字符串。默认的备份字尾符串是符号"~"
     -u 或 --update      使用这项参数之后,只会在源文件的修改时间(Modification Time)较目的文件更新时,或是名称相互对应的目的文件并不存在,才复制文件
     -v 或 --verbose     显示执行过程
     -V <备份方式> 或 --version-control=<备份方式>  指定当备份文件时,备份文件名的命名方式,有以下3种:
                         1.numbered或t, 将使用备份编号,会在字尾加上~1~字符串,其数字编号依次递增
                         2.simple或never 将使用简单备份,默认的备份字尾字符串是~, 也可通过-S来指定
                         3.existing或nil将使用当前方式,程序会先检查是否存在着备份编号,若有则采用备份编号,若无则采用简单备份
     -x 或 --one-file-system  复制的文件或目录存放的文件系统,必须与cp指令执行时所处的文件系统相同,否则不复制,亦不处理位于其他分区的文件
     --help              显示在线帮助
     --sparse=<使用时机>  设置保存希疏文件的时机
     --version           显示版本

fi命令:相当于 end if
so命令近似等于so so和sudo区别

su <user>

执行该命令,需要输入password,它是<user>中定义的用户的password,即,要变换成的用户的password。(如果已经用root登录,则无需输入password)该命令改变user id,执行过后,以<user> 中定义的用户运行shell,就像用<user>定义的用户远程登录后一样。唯一不同之处在于,先前user的环境变量将被保存(保存在 ssh终端程序中,当执行exit后,又可以改变成先前的用户身份,并使用先前用户的环境变量)。


sudo su <user>

它和su的行为相似,不同之处在于,sudo su <user>中的su将以root身份被执行,并要求输入root的password,注意,不是<user>中定义的user的password。


简而言之,二者区别在于,su <user>要输入<user>的password,而sudo su <user>要输入root的password,但二者都将用户身份改变成<user>定义的用户。


[yasi]:

实际工作中,遇到一个困惑。登录工作环境的VM时,用logs(属于nobody group)用户及其passwor远程登录,然后su root,需要输入root的password,然后就可以作为root运行shell。但是,直接用root用户和那个password登陆,就会登录 失败。不知道这里面的规则是怎么定义的,为什么一定要两步登录root用户。还有,这里两步登录的root和真正的管理员root,他们之前有没有什么权 限的差别?如果有,差别的规则是在哪里定义的?

此外,还有一种现象:两步登录的root终端,闲置一段时间(10分钟以上)后,会自动执行exit命令,变回logs用户。logs用户闲置一段时间后,该终端会自动退出。


附:关于su命令的一些confusion

su - <user>

转变身份为<user>定义的用户,如果没有指定<user>,则默认为root,即

su -

转变身份为root用户


以下命令效果相同:



    su
    su root
    su -
    su - root




以下命令效果相同:



    su <user>
    su - <user>

顺便说一下:debian默认是不安装sudo的,即普通用户是无法使用sudo获取root权限的

[ $? -ne 0] 这个是什么意思?

检查之前运行的命令是不是正常结束。




1. 命令行日常系快捷键

如下的快捷方式非常有用,能够极大的提升你的工作效率:

    CTRL + U - 剪切光标前的内容
    CTRL + K - 剪切光标至行末的内容
    CTRL + Y - 粘贴
    CTRL + E - 移动光标到行末
    CTRL + A - 移动光标到行首
    ALT + F - 跳向下一个空格
    ALT + B - 跳回上一个空格
    ALT + Backspace - 删除前一个单词
    CTRL + W - 剪切光标前一个单词
    Shift + Insert - 向终端内粘贴文本

那么为了让上述内容更易理解来看下面的这行命令。

sudo apt-get intall programname

如你所见,命令中存在拼写错误,为了正常执行需要把“intall”替换成“install”。

想象现在光标正在行末,我们有很多的方法将她退回单词install并替换它。

我可以按两次ALT+B这样光标就会在如下的位置(这里用指代光标的位置)。

sudo apt-get^intall programname

现在你可以按两下方向键并将“s”插入到install中去了。

如果你想将浏览器中的文本复制到终端,可以使用快捷键"shift + insert"。
2. SUDO !!


3. 暂停并在后台运行命令

我曾经写过一篇如何在终端后台运行命令的指南。

    CTRL + Z - 暂停应用程序
    fg - 重新将程序唤到前台

如何使用这个技巧呢?

试想你正用nano编辑一个文件:

sudo nano abc.txt

文件编辑到一半你意识到你需要马上在终端输入些命令,但是nano在前台运行让你不能输入。

你可能觉得唯一的方法就是保存文件,退出 nano,运行命令以后在重新打开nano。

其实你只要按CTRL + Z,前台的命令就会暂停,画面就切回到命令行了。然后你就能运行你想要运行命令,等命令运行完后在终端窗口输入“fg”就可以回到先前暂停的任务。

有一个尝试非常有趣就是用nano打开文件,输入一些东西然后暂停会话。再用nano打开另一个文件,输入一些什么后再暂停会话。如果你输入“fg”你将回到第二个用nano打开的文件。只有退出nano再输入“fg”,你才会回到第一个用nano打开的文件。
4. 使用nohup在登出SSH会话后仍运行命令

如果你用ssh登录别的机器时,nohup命令真的非常有用。

那么怎么使用nohup呢?

想象一下你使用ssh远程登录到另一台电脑上,你运行了一条非常耗时的命令然后退出了ssh会话,不过命令仍在执行。而nohup可以将这一场景变成现实。

举个例子,因为测试的需要,我用我的树莓派来下载发行版。我绝对不会给我的树莓派外接显示器、键盘或鼠标。

一般我总是用SSH从笔记本电脑连接到树莓派。如果我在不用nohup的情况下使用树莓派下载大型文件,那我就必须等待到下载完成后,才能登出ssh会话关掉笔记本。可如果是这样,那我为什么要使用树莓派下文件呢?

使用nohup的方法也很简单,只需如下例中在nohup后输入要执行的命令即可:

nohup wget http://mirror.is.co.za/mirrors/linuxmint.com/iso//stable/17.1/linuxmint-17.1-cinnamon-64bit.iso &

5. ‘在’特定的时间运行Linux命令

‘nohup’命令在你用SSH连接到服务器,并在上面保持执行SSH登出前任务的时候十分有用。

想一下如果你需要在特定的时间执行相同的命令,这种情况该怎么办呢?

命令‘at’就能妥善解决这一情况。以下是‘at’使用示例。

at 10:38 PM Fri
at> cowsay 'hello'
at> CTRL + D

上面的命令能在周五下午10时38分运行程序cowsay。

使用的语法就是‘at’后追加日期时间。当at>提示符出现后就可以输入你想在那个时间运行的命令了。

CTRL + D 返回终端。

还有许多日期和时间的格式,都需要你好好翻一翻‘at’的man手册来找到更多的使用方式。
6. Man手册

Man手册会为你列出命令和参数的使用大纲,教你如何使用她们。Man手册看起来沉闷呆板。(我思忖她们也不是被设计来娱乐我们的)。

不过这不代表你不能做些什么来使她们变得漂亮些。

export PAGER=most

你需要安装 ‘most’;她会使你的你的man手册的色彩更加绚丽。

你可以用以下命令给man手册设定指定的行长:

export MANWIDTH=80

最后,如果你有一个可用的浏览器,你可以使用-H在默认浏览器中打开任意的man页。

man -H <command>

注意啦,以上的命令只有在你将默认的浏览器设置到环境变量$BROWSER中了之后才效果哟。
7. 使用htop查看和管理进程

你用哪个命令找出电脑上正在运行的进程的呢?我敢打赌是‘ps’并在其后加不同的参数来得到你所想要的不同输出。

安装‘htop’吧!绝对让你相见恨晚。

htop在终端中将进程以列表的方式呈现,有点类似于Windows中的任务管理器。你可以使用功能键的组合来切换排列的方式和展示出来的项。你也可以在htop中直接杀死进程。

在终端中简单的输入htop即可运行。

htop

8. 使用ranger浏览文件系统

如果说htop是命令行进程控制的好帮手,那么ranger就是命令行浏览文件系统的好帮手。

你在用之前可能需要先安装,不过一旦安装了以后就可以在命令行输入以下命令启动她:

ranger

在命令行窗口中ranger和一些别的文件管理器很像,但是相比上下结构布局,她是左右结构的,这意味着你按左方向键你将前进到上一个文件夹,而右方向键则会切换到下一个。

在使用前ranger的man手册还是值得一读的,这样你就可以用快捷键操作ranger了。
9. 取消关机

无论是在命令行还是图形用户界面关机后,才发现自己不是真的想要关机。

shutdown -c

需要注意的是,如果关机已经开始则有可能来不及停止关机。

以下是另一个可以尝试命令:

    pkill shutdown

10. 杀死挂起进程的简单方法

想象一下,你正在运行的应用程序不明原因的僵死了。

你可以使用‘ps -ef’来找到该进程后杀掉或者使用‘htop’。

有一个更快、更容易的命令叫做xkill。

简单的在终端中输入以下命令并在窗口中点击你想杀死的应用程序。

xkill

那如果整个系统挂掉了怎么办呢?

按住键盘上的‘alt’和‘sysrq’不放,然后慢慢输入以下键:

    REISUB

这样不按电源键你的计算机也能重启了。
11. 下载Youtube视频

一般来说我们大多数人都喜欢看Youtube的视频,也会通过钟爱的播放器播放Youtube的流媒体。

如果你需要离线一段时间(比如:从苏格兰南部坐飞机到英格兰南部旅游的这段时间)那么你可能希望下载一些视频到存储设备中,到闲暇时观看。

你所要做的就是从包管理器中安装youtube-dl。

你可以用以下命令使用youtube-dl:

youtube-dl url-to-video

你可以在Youtubu视频页面点击分享链接得到视频的url。只要简单的复制链接在粘帖到命令行就行了(要用shift + insert快捷键哟)。
linux 修改root密码:
  sudo passwd root
vmware合并虚拟磁盘为一个:
>vmware-vdiskmanager.exe -r "D:\PeopleSoft HCM9.2+PT8.52 VM\Windows Server 2008 R2 x64-cl1.vmdk" -t 0 "D:\Merged.vmdk"

真的很强大,这样firefox浏览网页也终于可以脱离鼠标了,上个网页还非得要鼠标,真是很恶心,这回好了,终于可以上网而不用使用鼠标了。
具体一些简单而实用的快捷键:
g+i:切换至input box,如果有多个input box,可以按tab键自动切换。
f:把所有当前页面的链接用序号标记,然后你可以在浏览器最下面出现的console中输入你想要进入的链接序号~
G:直接滚到页面底部
gg:滚到顶部
中国版火狐插件:Tab Improve Lite
双击标签页可以关闭标签,但是需要调整才有此功能
默认 缩放sacle:layout.css.devPixelsPerPx调整为需要的比例
 2016年10月23日13:35:20
发现了火狐中的vimperator冲突的插件,貌似是toggle color或autopager,卸载掉这些好了,不然的话无论按F1还是:help或:helpall都呼叫不出来帮助,即使安装对应的翻译插件。。。
2016年10月24日11:36:12
打开标签的标记:set tabnumbers
快速切换打开的标签(长度超过10 就没有办法使用火狐自带的ctrl+n了,所以这个可以用)n+b
L:后退
H:前进  
Firefox(火狐浏览器)丰富的Web开发辅助插件
大多数网页设计师与前端工程师都会使用Firefox(火狐浏览器),由于Firefox丰富的Web开发辅助插件可以为我们提供许多好的功能,比如HTML,CSS,JS查错,找BUG等等。因此这里整理了目前常用的一些Firefox Web开发插件。

开发工具

1.  Web Developer 1.1.8

https://addons.mozilla.org/en-US/firefox/addon/60
以工具栏的形式对网页的(X)HTML、脚本、多媒体、CSS、缓存、图象等多方面的实用工具。使我们能轻易的获得网页的更多信息,使我们进一步的了解当前所浏览的网页。
说明:超强的web分析工具,开发人员必装。

2.  Firebug 1.5.0

https://addons.mozilla.org/en-US/firefox/addon/1843
Firebug 是firefox下的一个插件,能够调试所有网站语言,如Html,Css等,但FireBug最吸引我的就是javascript调试功能,使用起来非常方便,而且在各种浏览器下都能使用(IE,Firefox,Opera, Safari),简直难以置信。除此之外,其他功能还很强大。比如html,css,dom的察看与调试,网站整体分析等等。总之就是一整套完整而强大的 WEB开发工具。
说明:查看,编辑,Debug页面的CSS,HTML,JavaScript。超强的开发调试的工具,开发人员必装。

3.  LinrLightWeb 0.2.1

https://addons.mozilla.org/zh-CN/firefox/addon/14068
安装前,请确认您已安装Firebug插件,获取Firebug请访问:http://getfirebug.com/
1. 开启网页编辑模式,随意编辑网页——Fiddler的好搭档;
2. 超强Selector,查找操作标记;
3. 刷新CSS,无需刷新整页;
4. 快速设置CSS Sprites背景,鼠标拖移即可得到位置;
5. 保持登录状态,Session不过期;禁用
6. 同步发行IE版,Chrome版。
说明:非常强的web开发工具。

更多基于firebug的插件可以参考这篇文章:用来****Firebug的十三款Firefox插件

4.  View Source Char 2.7

https://addons.mozilla.org/en-US/firefox/addon/655
画一个 Color-Coded 的图表的 Web 页的源代码。
说明:显示非常好看的源码, 分级缩进, 不同颜色区分。

5.  Tamper Data 11.0.0

https://addons.mozilla.org/en-US/firefox/addon/966
Tamper Data 的真实含义,即“篡改数据”(或者说定制 HTTP 请求):截取浏览器发出的每一个 HTTP 请求,提示我们选择是要进行定制,还是不做定制而直接提交请求,还是终止当前被截取的请求,然后根据我们的选择决定是打开定制窗口,还是直接向 WEB 服务器提交请求,还是终止当前的请求。
说明:查看 firefox 收发请求的 header, 特别是在发出请求前, 可以修改 header。

6.  JavaScript Debuger 0.9.87.4

https://addons.mozilla.org/en-US/firefox/addon/216
Venkman 作为Mozilla的调试器,是针对Mozilla(Firefox)的自由工具
说明:firefox 环境下的 JavaScript Debugger, 强大的脚本调试工具。

7.  Live Http Headers 0.15

https://addons.mozilla.org/en-US/firefox/addon/3829
可以用来实时监测发起的http请求和响应,也可以修改请求参数之后重新发起请求。
说明:浏览页面同时记录所有 HTTP headers 。

8.  Add N Edit Cookies 0.2.1.3

https://addons.mozilla.org/en-US/firefox/addon/573

查看和修改本地的Cookie,Cookie欺骗必备。
说明:查看并且修改 cookies, 不方便的地方是显示所有浏览器的 cookies 而不仅是当前页。

9.  XPath Checker 0.4.1

https://addons.mozilla.org/en-US/firefox/addon/1095
这个工具没什么好多说的,就是安装后可以直接用,在网上看了使用方法,开始没看明白,后来才知道是在页面上点鼠标右键,下面有个view xpath,点击就可以了。
说明:据说可以调试 XPath。

10. YSlow 2.0.6

https://addons.mozilla.org/zh-cn/firefox/addon/5369
YSlow分析网页,并提出如何提高其性能的基础上一套规则,高性能的网页。
说明:能够帮我们分析web页面比较慢的原因,它是基于 Firebug的,也能分开浏览web页面的元素,比如js,css.

HTML验证

11.  HTML Validator(based on CSE HTML Validator)1.2.3

https://addons.mozilla.org/en-US/firefox/addon/887
HTML Validator是一个Firefox扩展,它能查找并标志出HTML页面上的错误。HTML Validator以Tidy为基础,Tidy最初是W3C为验证HTML代码开发的一个工具。
说明:著名的 CSE HTML Validator 引擎。

12.  Relaxed the HTML Validator 0.9.5

https://addons.mozilla.org/en-US/firefox/addon/3939
Relaxed the HTML Validator 0.9.5 这是一个做html验证的小插件,可以很容易的检测出页面的错误的html代码。
说明:直接在当前页面上进行 HTML validation, 界面清晰直观。

13.  Total Validator 6.2.0

https://addons.mozilla.org/en-US/firefox/addon/2318
这软件帮助你检查你的网页是否符合标准,结果将帮助你迅速地解决问题。
说明:把当前页面在 http://www.totalvalidator.com 做HTML Validation,输出结果用红字进行了语法修正, 比较友好。不过由于通过其他网站验证, 速度有点慢, 并且结果不易保存。

页面设计

14.  MeasureIt 0.3.92

https://addons.mozilla.org/en-US/firefox/addon/539
通过可以绘制在页面任何地方的刻度尺来显示以像素(px)计算的宽度、高度、元素缩进量。
说明:可以测量页面上任何选择区域的长宽, 对界面设计人员非常有帮助。

15.  ColorZilla 2.0.2

https://addons.mozilla.org/en-US/firefox/addon/271
利用ColorZilla 您可以从浏览器中的任一点读取色彩值,快速调节颜色并粘贴到其他应用程序。您可以缩放正在查看的页面或测量页面任意两点之间的距离。
说明:从 页面, 或者调色板上取色, 同时可以缩放页面。

SEO广告

16.  RankQuest SEO Toolbar 3.9.2

https://addons.mozilla.org/en-US/firefox/addon/1471
检查网站在搜索引擎和alexa的状态
说明:SEO 工具插件, 访问一个页面时, 显示此页面的各种排名及 SEO 信息。

17.  Adsense Preview 1.5

https://addons.mozilla.org/en-US/firefox/addon/2132
将谷歌广告放到你的网页上
说明:在当前页面上显示 Google ADs 帮助确定广告位置。

其他工具

18.  HackBar 1.4.2

https://addons.mozilla.org/en-US/firefox/addon/3899
包含一些常用的工具。(SQL injection,XSS,加密等)
说明:快速对字符串进行各种编码的工具, MD5, Base64, URLencode, URLDecode。

19.  Document Map 0.6.1

https://addons.mozilla.org/en-US/firefox/addon/475
显示当前页的标题结构中侧栏让之间快速导航…
说明:提供页面资源结构信息.。

20.  IE View Lite 1.3.5

https://addons.mozilla.org/en-US/firefox/addon/1429
IE View 简装版,将选项集成到了右键关联菜单中,同时增加了一个工具栏按钮。
说明:点右键可以选择在 IE 中打开页面, 有助于跨浏览器调试。

21.  TimeStamp Converter 2.0.0

https://addons.mozilla.org/en-US/firefox/addon/2063
将转换日期和 timestamps.Context 菜单选项将所选的时间戳转换为日期。
说明:除去从上下文中转换, 还可以手动将 timestamp 时间戳与 date/time 转换。

22.  TimestampDecode 0.1.8

https://addons.mozilla.org/en-US/firefox/addon/3208
将所选的编号视为一个时间戳并显示一个已解码的日期/时间。
说明:将选中的数字作为 timestamp 时间戳转换为 date/time。

23.  Fire Encrypter 4.0

https://addons.mozilla.org/en-US/firefox/addon/2063
说明:将文字加密成各种算法的密文, 甚至包括摩尔斯码。

24.  Add-in-one Sidebar

https://addons.mozilla.org/en-US/firefox/addon/1027
全方位多功能侧边栏。
说明:在浏览器左侧增加打开书签, 历史, 插件等的工具条。

25.  XHTML移动配置文件

https://addons.mozilla.org/en-US/firefox/addon/1345

提供对 application/vnd.wap.xhtml+xml mime类型的支持
说明:在浏览器中查看XHTML-MP移动Web文档。

26.  Small Screen Renderer

https://addons.mozilla.org/en-US/firefox/addon/526

小尺寸屏幕呈现器。
说明:用于在小尺寸屏幕上显示Web页面。移动Web人员使用该

增件进行健全性检查

27.  User Agent Switcher

https://addons.mozilla.org/en-US/firefox/addon/526

用户代理切换器。
说明:移动开发人员使用该增件模拟多个移动设备代理

28.  xmlbrowser

https://addons.mozilla.org/en-US/firefox/addon/62

xml文档呈现。
说明:移动开发人员使用该增件开发调试wml文档

29.  Modify Headers

https://addons.mozilla.org/en-US/firefox/addon/967

http请求头修改。
说明:模拟移动设备请求头 比User Agent Switcher

没有评论:

发表评论