最近在设置代理的时候,每次手写不方便,想起linux有个alias命令可以用,防止忘记,这边记录一下

一、alias 设置

1、设置别名 proxy

# 1、
# 设置别名前,使用 `type 自定义别名` 先查看自定义的别名是否已经被使用
type proxy
# 输出
proxy not found # 2、
# 文章以这个作为例子
alias proxy='export all_proxy=http://0.0.0.0:8118'
alias unproxy='unset all_proxy'
# or
alias proxy='export http_proxy=http://0.0.0.0:8118'
alias proxys='export https_proxy=http://0.0.0.0:8118'

2、查看我们设置后的别名列表

# 列出所有别名
alias
# 列出单个别名: alias 自己设置的别名
alias proxy
# 输出
...
ls='ls -G'
lsa='ls -lah'
md='mkdir -p'
please=sudo
po=popd
# 我们设置的
proxy='export http_proxy=http://0.0.0.0:8118'
pu=pushd
rd=rmdir
run-help=man
# 我们设置的
unproxy='unset all_proxy'
...

3、删除别名

# 执行删除别名命令后,使用 alias 查看 别名列表,proxy 别名消失
unalias proxy

4、可执行多个命令的别名

# 1.进入 cd /Users/zego/WebstormProjects 目录
# 2.查看当前文件列表
# 3.进入 edu 目录
# 命令之间使用分号隔开,不含空格
alias zgrun='cd /Users/zego/WebstormProjects;ll;cd edu'

5、查看设置的代理

# 查看设置的代理
echo $http_proxy
# 输出
http://0.0.0.0:8118 # 请求 www.google.com 看看是否成功
curl www.google.com

## 二、 alias 命令永久生效

1、配置文件

# bash: 用户和 linux 内核之间的接口程序

# .bashrc: 专用于当前 bash shell 的 bash 信息,当登录打开新的 shell 时,该文件被读取
# 每个用户都有一个 .bashrc 文件 # .bash_profile: 每个用户共享的一个 bash 信息,用户登录时,该文件只执行一次

2、在 .bash_profile 加入设置别名命令

vim ~/.bash_profile

在里面加入

alias proxy='export all_proxy=http://0.0.0.0:8118'
alias unproxy='unset all_proxy'

3、使新配置的命令生效

source ~/.bash_profile

4、命令永久生效

上面设置 .bash_profile 的方式在系统重启后,命令会失效

我们在使用 iterm + zsh 情况下,zsh 有自己的默认启动执行文件 .zshrc

在 zsh 中 让 alias 永久生效,编辑 ~/.zshrc

vim ~/.zshrc

在 # User configuration 这一行下面添加

source ~/.bash_profile

或者在 .zshrc 文件里面加入设置别名命令

alias proxy='export all_proxy=http://0.0.0.0:8118'
alias unproxy='unset all_proxy'

最后 source ~/.zshrc 更新配置

source ~/.zshrc

Linux/Mac中alias的使用的更多相关文章

  1. Python脚本实现Linux/MAC中Xmind Zen去水印等其他功能的过程(V0.1)

    说明本脚本仅作为学习使用,请勿用于任何商业用途.本文为原创,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接和本声明.功能简介 去除软件右上角激活按钮 去除导出时激活弹窗 去除导出PDF文 ...

  2. linux/mac下的配置自定义命令alias

    linux/mac下的自定义命令alias,并保存别名使其永久生效(重启不会失效) 在做开发每次提交代码的命令都是一长串参数,不想去记,于是可以使用alias命令来解决这个问题:alias aComm ...

  3. 今天在Mac机器上使用了Flex Builder编辑了一个源代码文件,保存后使用vim命令去打开时发现系统自动在每一行的结尾添加了^M符号,其实^M在Linux/Unix中是非常常见的,也就是我们在Win中见过的/r回车符号。由于编辑软件的编码问题,某些IDE的编辑器在编辑完文件之后会自动加上这个^M符号。看起来对我们的源代码没有任何影响,其实并不然,当我们把源代码文件Check In到svn之类

    今天在Mac机器上使用了Flex Builder编辑了一个源代码文件,保存后使用vim命令去打开时发现系统自动在每一行的结尾添加了^M符号,其实^M在Linux/Unix中是非常常见的,也就是我们在W ...

  4. 获得Unix/Linux系统中的IP、MAC地址等信息

    获得Unix/Linux系统中的IP.MAC地址等信息 中高级  |  2010-07-13 16:03  |  分类:①C语言. Unix/Linux. 网络编程 ②手册  |  4,471 次阅读 ...

  5. 在Windows、Mac和 Linux系统中安装Python与 PyCharm

    “工欲善其事,必先利其器”,本文介绍 Python环境的安装和 Python的集成开发环境(IDE) PyCharn的安装.   一.Python安装( Windows.Mac和 Linux) 当前主 ...

  6. 在linux和Mac中访问某个文件夹中所有的文件

    在linux和Mac中访问某个文件夹中所有的文件——输出所有的文件名 #include <stdio.h> #include <dirent.h> int main() { s ...

  7. Linux、Windows 和 Mac 中的换行符对比

    原文地址:Linux.Windows 和 Mac 中的换行符对比 博客地址:http://www.moonxy.com 一.前言 经常使用 Window.Linux 等不同操作系统的开发者,在处理文本 ...

  8. Mac中Mysql开启远程访问(不同于linux直接改配置文件)

    在mac中安装Mysql Workbench 用root用户连上安装的Mysql.  开启远程访问的服务 如下图可以看到是root用户绑定的是localhost  如果不做修改的话,直接访问是访问不了 ...

  9. MAC中如何配置两套android-sdk环境

    1 背景介绍 随着android studio的完善和普及,越来越多Android app开发者从Eclipse+ADT环境转到Android Studio(后文统一用AS表示).但是,AS往往需要较 ...

随机推荐

  1. Eclipse maven 明明有jar包 但是不能用

    原因1:没有引入pom.xml依赖 解决: 添加pom.xml依赖

  2. sql 基本查询

    要查询数据库表的数据,我们使用如下的SQL语句: SELECT * FROM <表名> 假设表名是students,要查询students表的所有行,我们用如下SQL语句: -- 查询st ...

  3. NX二次开发CreateDialog函数在UI.hxx文件和WinUser.h中的冲突【转载】

    文章出自https://blog.csdn.net/qq_41843732/article/details/91422764 在UG二次开发中,若使用MFC库,一旦加上#include<Afx. ...

  4. (转)OpenFire源码学习之五:用户登录

    转:http://blog.csdn.net/huwenfeng_2011/article/details/43413377 登陆 登陆认证,客户端发送认SASL证消息: <auth mecha ...

  5. linq中如何合并多个predicate条件

    最近在做一个webAPI 的时候遇到一个需要合并多个predicate条件的问题,下面就是对题的情况.为了方便交流我对case进行了简化,请先看如下代码: using System.Collectio ...

  6. thinkphp5操作redis系列教程】列表类型之lRange,lGetRange

    <?php namespace app\admin\controller; use think\cache\driver\Redis; use think\Controller; use \th ...

  7. TI低功耗蓝牙(BLE)介绍【转】

    转自:http://blog.csdn.net/ooakk/article/details/7302425 TI低功耗蓝牙(BLE)介绍 本文档翻译和修改自参考资料:CC2540Bluetooth L ...

  8. (动态改变数据源遇到的问题)ORACLE11g:No Dialect mapping for JDBC type: -9解决方案

    在动态改变数据源时 hibernate配置不能使用Oracle官方的方言(org.hibernate.dialect.Oracle10gDialect) 做法写一个方言扩展类,缺什么类型,添加什么类型 ...

  9. GF学习未解之谜

    1.很奇怪事件管理器里面的用到的订阅事件里面的ID是通过typeof(xxx).GetHashCode()得到的,怎么解决id重复的问题? 2.log系统里面是不是直接全部当做多参数解决问题比较好?

  10. Linux分页机制

    地址长度 在Linux下,unsigned long可以与地址的长度保持一致,即32位系统下unsigned long为32位,而64位系统下为64位长. 虚拟地址的分解 如图所示,通过XXX_SHI ...