[原创]互联网工作环境(Mac+CentOS)ABC

来源:互联网 发布:中文顶级域名注册 编辑:程序博客网 时间:2024/06/16 16:37

以下归纳整理了互联网工作环境的一些笔记心得。

先说硬件和操作系统环境:

  • Macbook Pro me866
  • Mac OS X Yosemite 10.10.5
  • CentOS6.5

Mac工作环境的操作习惯

MAC快捷键
Mac 菜单和键盘通常使用符号来代表某些按键,其中包括以下修饰键:

  • Command ⌘
  • Shift ⇧
  • Option ⌥
  • Control ⌃
  • Caps Lock ⇪
  • Fn

Shift-Command-3 屏幕快照:拍摄整个屏幕的屏幕快照。了解更多屏幕快照快捷键。
Shift-Command-4 屏幕正方形快照。
减号 (-) 缩小所选项。
加号 (+) 放大所选项。Command–等号 (=) 可执行相同的功能。
更多快捷键参见官网:https://support.apple.com/zh-cn/HT201236

触控板操作

  • 单指:移动光标箭头
  • 双指:上下移动页面
  • 三指:显示当前窗口

MAC软件及补充清单

  • Mac系统自带的浏览器Safari
  • 邮件收发器Mail
  • 备忘录Notes
  • 类Office常用工具Pages,Numbers,KeyNotes
  • 类AdobeReader的Preview
  • Dictionary
  • Calculator
    这些都很好用,不需要额外安装替代软件。

补充的软件清单如下:

  • 浏览器Chrome
  • 方便各种扩展插件 QQ,方便工作沟通
  • Pycharm社区版,python神器,还需要安装python包管理器pip/easy_install
  • IntellijIDEA社区版,Java神器,还需要安装JDK1.8
  • Sublime Text2,代码文本阅读神器
  • ITerm:完美Mac终端
  • Charles:抓包神器
  • AirDroid:Mac和手机双向数据传送权杖
  • brew: MacOS软件管理神器
  • vim/ctags:看代码神器,还要安装vim插件管理神器vundle

Linux系统
CentOS是RHEL源码开源编译版本,属于linux系统。

linux目录树下重要文件夹

  • 系统启动相关的都在根目录一级,而非启动的,一般在/usr或者/var目录下。库/lib,临时文件/tmp都是如此。
  • 当前系统进程,硬件状态:/proc
  • 绝大部分系统log:/var/log
  • 各种运行时信息:/var/run
  • 系统运行时需要的文件:/var/lib
  • 启动配置:/etc/init.d
  • 启动所需的普通程序和系统程序:/bin和/sbin
  • 绝大部分非启动应用程序:/usr/bin
  • 绝大部分非启动系统程序:/usr/sbin
  • c/c++头文件:/usr/include

linux常用命令

  • tac:反序输出文本
  • nl:显示行号
  • od:二进制读取文件内容
  • pg:分页显示
  • locate:查/var/lib/locatedb,需要管理员updatedb来更新
  • cal:显示日历
  • ctrl-u:删光标前字符
  • ctrl-k:删光标后字符
  • ctrl-w:删光标前一个词
  • ctrl-r:搜索匹配历史命令,在iterm里很好用

find例子:

  • find . -mtime 5 -print查询5天内修改的文件,此外还可以查询atime,ctime
  • find . -size +1000M -print查询大于1G的大文件
  • find . -type f -print查询普通文件

grep例子:

  • grep -in -v反向 -E扩展正则
  • 正则可以用内置集合:[[:digit:]]表示所有数字,其他可选upper,lower,album,space,alpha。

sort例子:

  • sort -k2 -t ‘\t’ -u去重

tr主要用途:大小写转换,去除控制字符,或者删除字符
tr中也有内置集合:
[:X:]
X可以是alnum,alpha,blank,control,digit,graph,lower,print,punct,space,upper,xdigit

tr例子:
tr -s “[alpha]” < file 字母去重
-c:字符集替换
-d:删除字符
-s:相邻字符去重

uniq假定文件已调用sort -u对文本进行排序
-u:只显示不重复行
-d:只显示重复行
-c:打印每一行重复次数

join将两个文本中第1个字段相同的行合并起来

cut -d “\t” -f “2” 按tab分割,并取第2段

paste -d “:” file1 file2 按行拼接起来

split -b 100M 按100M大小切割大文件

awk -F ‘\t’ ‘pattern+{action}’ file
awk给action传参数例子:
awk -v AGE=10 ‘{if(5<AGE)print 0;}’ data.txt
awk脚本排错方法:

  • 最外围一定是单引号
  • 命令内必须仅仅使用双引号,并且必须成对
  • 用圆括号括起条件表达式,语句之间用分号
  • 变量不加$

sed用途:抽取域,匹配正则,比较,替换或者附加域

sed例子:
显示n,m行: sed -n ‘1,3p’ file
打印匹配行号:sed -n ‘/pattern/=’ file
匹配行后附加新行:sed ‘/pattern/a\”new_line”’ file
sed [n,m] ‘s/pattern/replate_pat/[gpwn]’ file
g:全局替换
p:打印模式空间
w:重定向另一个文件
n:1-512之间,指定第n次替换
捕获匹配的方法:sed -n ‘s/pat/extra&/p’ file

shell脚本
$#:传递到脚本的参数个数
$@:程序参数列表

YUM
yum是Yellow dog Update Modified首字母缩写。关键要有可靠的repo,相比rpm的优势是自动解决库依赖

git常用命令

  • git clone/fetch:克隆项目
  • git checkout:检出分支
  • git status:检查当前分支的修改状态
  • git add/reset:添加/取消本地修改
  • git pull:拉取服务器更新
  • git commit:提交修改
  • git push:将提交的修改同步到远程服务器
  • git branch:创建分支
  • git remote -r:获取当前项目远程地址
  • git ls-files:获取当前git下文件列表
  • git diff:比较版本差异,后面可以跟两个版本号
  • git merge:合并有冲突的修改
  • git log:查看提交日志

正则表达式

  • \<:词首
  • >:词尾
  • (pattern):捕获模式
  • pat{m,n}:模式重复出现n到m次之间
  • ?:非贪婪匹配

curl例子
-d, –data 数据
-G, –get
-H, –header 请求头
-o, –output 输出重定向
-s, –silent 静默
-v, –verbose 显式输出
-X, –request

curl通常用来获取HTTP请求的数据,而前端的数据中json文本非常流行。JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于ECMAScript的一个子集。

网上有个jq的工具,可以在命令行格式化json。例如:
curl ‘http://mock_http.com’ | jq ‘.’
将返回一个格式化的json数据,如同json在线格式化工具的输出样式。

php命令行运行方式
php -r “echo(‘hello php’);”
其他输出命令还有json_encode(), print,print_r(), echo()等

redis操作
常见的string,hash,zset操作如下:

  • set key value
  • get key => value
  • hset hashset k1 v1 k2 v2
  • hgetall hasset
  • zadd zset key value
  • zrange zset 0 -1
0 0
原创粉丝点击