shell工具使用配置备忘
一、bash之vi mode。两种方式:set -o vi(只让bash自己进入vi模式)或 set editing-mode vi(让所有使用readline库函数的程序在读取命令行时都进入vi模式)。然后:在vi mode下,要替换ESCAPE(从插入状态变回普通状态,也就是移动状态),并不是读.vim,而是要修改.inputrc:
set keymap vi-insert
"\C-f": vi-movement-mode
二、写一个sh脚本,想把命令行参数原封不动传给要调用的另一脚本,就用$@表示参数,最好用引号括起来:"$@"
三、bash里给git命令添加自动补全。.profile里添加:
source /opt/local/etc/bash_completion
source /opt/local/share/git-core/git-prompt.sh
会发现完全没感觉,因为bash版本太旧拉!mac自带的是3.2,以上脚本要在4.0以上才有用。用macport安装的新bash放在/opt/local/bin/bash里,最好是修改login shell指向它。但是mac又已经不用/etc/passwd方件,直接用chsh去修改居然又提示不是标准shell不让改,真是抓狂啊,最后在设置面板用户和组里,按住ctrl右键点用户名,弹出菜单里点高级选项,里面终于可以设置了。
四、tmux使用。
创建会话:tmux [-S 共享用的socket路径] new-session -s 会话名
查看会话:tmux [-S 共享用的socket路径] ls
加入会话:tmux [-S 共享用的socket路径] attach [-dr] -t 会话名 // -d用来把其它人踢出会话,-r设定自己只能看不能改
大S指定共享socket,小s指定该socket下的会话,连到同一会话的tmux client会得到完全相同的屏幕输入输出。都不指定的话就使用默认值了。另附配置表:./.tmux
set -g prefix C-a #设置PREFIX为Ctrl-a
bind r source-file ~/.tmux.conf \; display "Reloaded!" #将r键设置为加载配置文件,并显示"reloaded!"信息bind h select-pane -L #像vim里一样切换面板
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
bind - split-window #横竖分割面板,-和|,比较形象
bind | split-window -h
bind-key -r Up resize-pane -U #调整面板大小,上下左右,好记
bind-key -r Down resize-pane -D
bind-key -r Left resize-pane -L
bind-key -r Right resize-pane -Runbind C-b #解除Ctrl-b与PREFIX的对应关系
unbind Space
unbind C-o #这两个快捷键都是自作聪明改面板布局的,会把我们辛苦调好的布局弄乱,取消之
setw -g mode-keys vi #copy-mode将快捷键设置为vi模式#以下从网上拷的
set -g default-terminal "screen-256color"
set -g status-utf8 on
set -g pane-border-fg green
set -g pane-border-bg black
set -g pane-active-border-fg white
set -g pane-active-border-bg yellow
set -g message-fg white
set -g message-bg black
set -g message-attr bright
set -g status-fg white
set -g status-bg black
setw -g window-status-fg cyan
setw -g window-status-bg default
setw -g window-status-attr dim
setw -g window-status-current-fg white
setw -g window-status-current-bg red
setw -g window-status-current-attr brightset -g status-left-length 40
set -g status-left "#[fg=green]Session: #S #[fg=yellow]#I #[fg=cyan]#P"
set -g status-right "#[fg=cyan]%d %b %R"
set -g status-interval 60
set -g status-justify centresetw -g monitor-activity on #开启window事件提示
set -g visual-activity on
set-window-option -g mode-keys vi
setw -g mode-mouse on
五、将用户添加到其它组:
usermod -aG git(组) wellbye(用户)。
一般都是为了共享文件,比如普通用户想直接以local方式访问git用户下的仓库,就把该用户也添到git组里去好了。另外,为了加sudo权限,也可以加到sudo组里而避免改sudoers文件。
六、运行一个“真正”的后台程序,使之能在退出登录后仍继续运行
nohup “真正的程序命令行” &
七、修改bash命令提示符以显示当前路径
export PS1="[\w]"
更多变量可以在man bash手册里查到
shell工具使用配置备忘的更多相关文章
- Manjaro启动项目及服务配置备忘
Manjaro启动项目及服务配置备忘 =============== 系统服务GUI管理搜索 systemdgenie 并安装,类似Windows的服务管理. ================ 系统启 ...
- 生产服务器环境最小化安装后 Centos 6.5优化配置备忘
生产服务器环境最小化安装后 Centos 6.5优化配置备忘 作者:Memory 发布于:2014-8-13 15:00 Wednesday 服务器 本文 centos 6.5 优化 的项有18处: ...
- 生产服务器环境最小化安装后Centos 6.5优化配置备忘
生产服务器环境最小化安装后 Centos 6.5优化配置备忘 本文 centos 6.5 优化 的项有18处,列表如下: 1.centos6.5最小化安装后启动网卡 2.ifconfig查询IP进行S ...
- jenkins持续集成配置备忘
配过好几次,但是老忘记.记录备忘. 安装下列插件: ssh和git插件用来下载源码 publish over ssh 插件用来发布代码到测试环境. email插件用来更强大的email配置. file ...
- Nginx基本配置备忘
原文:http://www.open-open.com/lib/view/open1482477873078.html Nginx 配置 在了解具体的Nginx配置项之前我们需要对于Nginx配置文件 ...
- atom 配置备忘
插件 vim-mode-plus vim-mode-plus-ex-mode plateformio-ide-terminal 'cmd窗口 docblockr 帮助你快速的生成注释 linte ...
- Nginx学习总结(5)——Nginx基本配置备忘
Nginx 配置 在了解具体的Nginx配置项之前我们需要对于Nginx配置文件的构成有所概念,一般来说,Nginx配置文件会由如下几个部分构成: # 全局块 ... # events块 events ...
- mac中apache+mysql+php+phpMyAdmin配置备忘
Mac OS X 内置Apache 和 PHP,使用起来非常方便.本文以Mac OS X 10.6.3和为例.主要内容包括: 启动Apache 运行PHP 安装MySQL 使用phpMyAdmin 配 ...
- Web Config配置备忘
数据压缩 <httpCompression>节点用于配置静态压缩和动态压缩,<urlCompression>则用于开关 http压缩 <urlCompression do ...
随机推荐
- DevOps means no Ops!
DevOps means no Ops! 只单纯地搞网络的话或许你可以搞得非常好,并且获得不错的薪资,不过,5年后~10年后~,那时候随便一个人经过简单的学习就能通过Web界面或者专用的工具就能搞定一 ...
- Mysql——JDBC编程 理论介绍
一.JDBC简介(来自俞琰--数据库老师) Java数据库编程主要使用JDBC技术.JDBC是一种用于执行SQL语句的Java API.它由一组用Java编写的类和接口组成.JDBC为开发人员提供了一 ...
- [原创]java WEB学习笔记08:HttpServletRequest & ServletRequest
本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...
- 某国际知名IT公司笔试
原文地址:http://blog.csdn.net/lazy_tiger/article/details/1790986 这段时间没怎么顾及自己的这个“一寸土地”, 实在惭愧.因为这些天小弟又经历了“ ...
- perl常用字符串函数
1.$position = index(string,substring,skipchars): 该函数返回子串substring在字符串string中的位置,如果不存在,则返回-1:参数skipch ...
- 第二天(1)声明式验证之使用验证框架验证域模型和ModelDriven验证
有一类特殊的属性,即这个属性的类型是另外一个JavaBean,如有一个User类,代码如下: package data; public class User { private String name ...
- c# 继承小结
本文意在巩固基础知识,并不是对其进行深入剖析,如若对各位高手没有什么作用,请绕过.本文为原创文,所有示例均是博主测试过的,欢迎大家批评指正,如有转载请标明出处,谢谢.继承.封装和多态是面向对象编程的重 ...
- Java -- Swing 组件使用
1. 示例1 public class Main { JFrame f = new JFrame(); Icon okIcon = new ImageIcon("/home/test/sta ...
- linux命令学习笔记(19):find 命令概览
Linux下find命令在目录结构中搜索文件,并执行指定的操作.Linux下find命令提供了相当多的查找条件,功能 很强大.由于find具有强大的功能,所以它的选项也很多,其中大部分选项都值得我们花 ...
- 【leetcode刷题笔记】Palindrome Partitioning
Given a string s, partition s such that every substring of the partition is a palindrome. Return all ...