Shells

Shell提供了一个和操作系统交互的命令行接口。shell的主要功能就是从输入取得命令然后去执行。FreeBSD内含了一些shell,包括:Bourne shell(sh)、 extended C shell(tcsh)。 其他shell也可在FreeBSD的Ports得到,例如:zsh和bash。

Shell的特点:
  • 文件名补全
  • 使用环境变量
    Common Environment Variables
Variable    Description
USER    Current logged in user's name.
PATH    Colon-separated list of directories to search for binaries.
DISPLAY Network name of the Xorg display to connect to, if available.
SHELL   The current shell.
TERM    The name of the user's type of terminal. Used to determine the capabilities of the terminal.
TERMCAP Database entry of the terminal escape codes to perform various terminal functions.
OSTYPE  Type of operating system.
MACHTYPE    The system's CPU architecture.
EDITOR  The user's preferred text editor.
PAGER   The user's preferred utility for viewing text one page at a time.
MANPATH Colon-separated list of directories to search for manual pages.

怎样设置环境变量:不同的shell有不同的方法。
- 在tcsh和csh这样的C-Style shell,使用setenv设置环境变量
- 在sh和bash这样的Bourne shell,使用, export设置环境变量

例如:设置或改变EDITOR环境变量,将EDITOR设为/usr/local/bin/vim.
在csh或tcsh下

setenv EDITOR /usr/local/bin/vim

在sh或bash下

export EDITOR="/usr/local/bin/vim"

命令行中在环境变量前加一个$字符,可以取得环境变量查看当前设置。
shell里有许多特别的字符代表着特别的内容,我们把叫做meta-characters。最常用的就是*字符,它可代表文件名的任何字符。为了防止shell去分析这些特别字符, 我们可在它之前加一个\字符去说明它只是普通字符。

改变Shell

改变Shell的最简单方法是使用 chsh 命令。
- 执行 chsh 将根据EDITOR 环境变量进入到那个编辑器,假如没有设定,就会进入vi编辑器。 请改变“Shell:”这行对应值。
- 可使用chsh 的-s选项, 这样就能设置您的shell却又不用编辑器。假如想把shell改为bash:

chsh -s /usr/local/bin/bash

注意:新的shell必须在/etc/shells文件里列出。 如果从ports里安装一个shell,应该默认自动添加到这个文件了。如果没有添加,用下面的命令添加:echo "/usr/local/bin/bash" >> /etc/shells ,然后从新运行chsh.

Shell高级技巧

Advanced Shell Techniques

  • 重定向:> <
  • 管道:|

UNIX基础--Shells相关推荐

  1. UNIX环境高级编程——1.UNIX基础知识

    UNIX基础知识 UNIX体系结构 严格意义上来说,可以将操作系统定义为一种软件,控制计算机硬件资源,提供程序运行环境.通常把这种软件成为内核. 内核的接口被成为系统调用(system call).公 ...

  2. 《UNIX 环境高级编程》学习笔记——UNIX 基础知识

    UNIX环境高级编程--UNIX 基础知识 引言 UNIX 体系结构 登录 文件和目录 输入和输出 程序和进程 出错处理 用户标识 信号 时间值 系统调用和库函数 引言 所有操作系统都为它们所允许的程 ...

  3. Unix整理笔记——Unix基础——里程碑

    以前学习过Linux的知识,但感觉学的杂,不系统,基本上是用到什么知识点看什么,比较乱.现在利用休息时间在来整理下unix和linux的知识体系.就从基础开始吧! Unix系统的组件介绍: 1 内核 ...

  4. UNIX环境高级编程 - UNIX基础知识

    所有操作系统都为运行在它之上的程序提供各种服务,典型的服务包括:执行新程序.打开文件.读写文件.分配存储空间.提供时间等. UNIX体系结构 严格来说,操作系统是一种软件,它控制计算机硬件资源,提供程 ...

  5. 企业级Oracle入门Linux/Unix基础①

    1.了解计算机系统的组成.操作系统介绍.IT技术发展与云计算.服务器的分类.存储设备介绍.常用的主机存储有哪些? 1.1 计算机系统的组成: 计算机系统由硬件和软件两部分组成.硬件包括中央处理器(CP ...

  6. APUE 学习笔记(一) Unix基础知识

    1. Unix 体系结构 内核的接口被称为系统调用 公用函数库构建在系统调用接口之上 应用软件既可以调用公用函数库,也可以直接进行系统调用 2. 文件和目录 目录操作函数:opendir---> ...

  7. 《UNIX环境高级编程 3rd》笔记(1 / 21):UNIX基础知识

    文章目录 引言 UNIX体系结构 登录 登录名 shell 文件和目录 文件系统 文件名 路径名 工作目录 起始目录 输入和输出 文件描述符 标准输入.标准输出和标准错误 不带缓冲的IO 标准IO 程 ...

  8. linux孤儿进程组深入理解,unix基础---有关于孤儿进程组和终端会话的理解-------值得一看!!!...

    转载自http://xingyunbaijunwei.blog.163.com/blog/static/765380672011112633634628/ 孤儿进程: 即一个其父进程已经终止的进程.  ...

  9. unix基础之改变文件权限

    1.字母方式改变权限 改变访问模式:  chmod [-R] 模式文件 · 其中模式为:  u,g 或者o 代表用户, 组和其他人  + 或者- 代表允许或拒绝  r, w 或x 代表读, 写和执行 ...

最新文章

  1. 仅用2年过渡到自研ARM芯片,苹果的底气从何而来?
  2. 终于来了,国内首个基于结构光投影三维重建系列视频课程
  3. Tomcat 运行项目出现 server tomcat v8.0 server at localhost failed to start处理方式
  4. 開發MOSS2007 Masterpage的一些經驗
  5. 深度学习如何均衡精度、内存、计算和通信开销?
  6. 信号的采样与恢复matlab实验报告,实验七 连续信号的采样与恢复
  7. 自定义exchange由IMF导致的NDR信息
  8. 宝塔面板部署网易云api
  9. WEBMAX官方帮助手册 惊艳登场
  10. oracle赋权directory,ORACLE DIRECTORY目录管理步骤
  11. luci html 页面,luci更改登录账号.htm
  12. 京东直营店和自营店有哪些区别?
  13. 天体观测位置的计算--方位角和俯仰角
  14. Excel 2003文档的密码忘了怎么办
  15. 如何获取微信开发者id及设置微信授权目录
  16. 检索 COM 类工厂中 CLSID 为 {000209FF-0000-0000-C000-000000000046} 的组件失败,原因是出现以下错误: 8000401a 因为配置标识不正确,系统无法开
  17. vscode切换中英文
  18. android分析内存工具,Android Studio内存泄漏分析工具汇总
  19. 5分钟内完成Python键盘记录程序
  20. 求n位水仙花数(C语言实现)

热门文章

  1. Infor 15亿美元融资,CEO终于回应了
  2. Word2010设置显示中文几号字
  3. 软件开发过程中的各种图
  4. 2022-2028全球军用级电脑行业调研及趋势分析报告
  5. 解决local variable 'has_fav_course' referenced before assignment(Python)
  6. ios 穿山甲广告联盟集成_今日头条发布穿山甲联盟 如何实现广告联盟模式进阶?...
  7. matlab:基于GUI的作图设计
  8. 解决一个国际化标准库的问题
  9. 张丹带你用R语言开始量化投资
  10. 国庆档来袭,电影市场只能依靠“黄道吉日”捞金?