Linux下输入某些命令时会提示:bash:command not found。

首先,查看$PATH中是否包含了这些命令。

$PATH:决定了shell到哪些目录中去寻找命令或程序,PATH值是一系列的目录。当运行程序时,linux到这些目录下搜索进行编译链接。

格式:

PATH = $PATH:<PATH1>:<PATH2>:<PATH3>:...:<PATH N>

可以将自己指定的路径加到PATH中,中间用冒号":"隔开。环境变量更改后,会在用户下次登录的时候生效;若想立即生效,则需要执行:

1 $ source .bash_profile

完成之后可以通过 echo  echo PATH查看当前的搜索路径。这样定制之后,可以避免频繁的启动位于shell搜索路径之外的程序。

查看PATH值:

方法一:export

 1 [root@localhost /]# export
2 declare -x BASH_ENV="/root/.bashrc"
3 declare -x G_BROKEN_FILENAMES="1"
4 declare -x HISTSIZE="1000"
5 declare -x HOME="/root"
6 declare -x HOSTNAME="localhost.localdomain"
7 declare -x INPUTRC="/etc/inputrc"
8 declare -x LANG="zh_CN.GB18030"
9 declare -x LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"
10 declare -x LESSOPEN="|/usr/bin/lesspipe.sh %s"
11 declare -x LOGNAME="root"
12 declare -x LS_COLORS="no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:ex=01;32:*.cmd=01;32:*.exe=01;32:*.com=01;32:*.btm=01;32:*.bat=01;32:*.sh=01;32:*.csh=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.gz=01;31:*.bz2=01;31:*.bz=01;31:*.tz=01;31:*.rpm=01;31:*.cpio=01;31:*.jpg=01;35:*.gif=01;35:*.bmp=01;35:*.xbm=01;35:*.xpm=01;35:*.png=01;35:*.tif=01;35:"
13 declare -x MAIL="/var/spool/mail/root"
14 declare -x OLDPWD="/"
15 declare -x PATH="/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin"
16 declare -x PWD="/"
17 declare -x SHELL="/bin/bash"
18 declare -x SHLVL="1"
19 declare -x SSH_ASKPASS="/usr/libexec/openssh/gnome-ssh-askpass"
20 declare -x SSH_CLIENT="192.168.199.107 63049 22"
21 declare -x SSH_CONNECTION="192.168.199.107 63049 192.168.199.10 22"
22 declare -x SSH_TTY="/dev/pts/2"
23 declare -x TERM="vt100"
24 declare -x USER="root"
25 declare -x USERNAME="root"
26 [root@localhost /]#

方法二: echo echo PATH

1 [root@localhost /]# echo $PATH
2 /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin
3 [root@localhost /]#

添加$PATH环境变量:

[root@localhost u-boot-sh4]#export PATH=/opt/STM/STLinux-2.3/devkit/sh4/bin:$PATH

再次查看:

1 [root@localhost u-boot-sh4]# echo $PATH
2 /opt/STM/STLinux-2.3/devkit/sh4/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

则说明添加PATH成功。

上述方法添加PATH 在终端关闭后会消失。建议通过编辑/etc/profile 修改PATH,也可修改/home目录下的 .bashrc

 1 [root@localhost etc]# vim /etc/profile
2 # /etc/profile
3
4 # System wide environment and startup programs, for login setup
5 # Functions and aliases go in /etc/bashrc
6
7 pathmunge () {
8 if ! echo $PATH | /bin/egrep -q "(^|:)$1($|:)" ; then
9 if [ "$2" = "after" ] ; then
10 PATH=$PATH:$1
11 else
12 PATH=$1:$PATH
13 fi
14 fi
15 }
16
17 # Path manipulation
18 if [ `id -u` = 0 ]; then
19 pathmunge /sbin
20 pathmunge /usr/sbin
21 pathmunge /usr/local/sbin
22 fi
23
24 pathmunge /usr/X11R6/bin after
25
26 unset pathmunge
27
28 # No core files by default
29 ulimit -S -c 0 > /dev/null 2>&1
30
31 "/etc/profile" [已转换] 49L, 842C

在最后添加:

1 export PATH="/opt/STM/STLinux-2.3/devkit/sh4/bin:$PATH"

保存后,退出,执行:

1 [root@localhost etc]# source /etc/profile

不报错就成功。

  $PATH下目录简介

PATH中主要有以下四个目录:

/bin, /usr/bin, /sbin, /usr/sbin

主要存放的东西:

./bin:

bin为binary的简写主要放置一些系统的必备执行档案。如:cat,cp, chmod df, dmesg, gzip, kill, ls, mkdir, more, mount, rm, su, tar 等。

/usr/bin:

主要放置一些应用软体工具的必备执行档例。如:c++、g++、gcc、chdrv、diff、dig、du、eject、elm、free、gnome*、 gzip、htpasswd、kfm、ktop、last、less、locale、m4、make、man、mcopy、ncftp、 newaliases、nslookup passwd、quota、smb*、wget等。

/sbin:

主要放置一些系统管理的必备程式例。如:cfdisk、dhcpcd、dump、e2fsck、fdisk、halt、ifconfig、ifup、 ifdown、init、insmod、lilo、lsmod、mke2fs、modprobe、quotacheck、reboot、rmmod、 runlevel、shutdown等。

/usr/sbin:

放置一些网路管理的必备程式例。如:dhcpd、httpd、imap、in.*d、inetd、lpd、named、netconfig、nmbd、samba、sendmail、squid、swap、tcpd、tcpdump等。

Linux下提示命令找不到:bash:command not found的更多相关文章

  1. Linux 下 make 命令 及 make 笔记

    Linux 下 make 命令是系统管理员和程序员用的最频繁的命令之一.管理员用它通过命令行来编译和安装很多开源的工具,程序员用它来管理他们大型复杂的项目编译问题.本文我们将用一些实例来讨论 make ...

  2. Linux下who命令之C语言实现

    Linux下who命令之C语言实现 Step1:前期准备 首先要有一个清楚的认识:linux中一切皆文件 实现who命令,who命令也是Linux中的一个文件,那我们怎么找到它呢?我们可以" ...

  3. linux下history命令显示历史指令记录的使用方法

    Linux系统当你在shell(控制台)中输入并执行命令时,shell会自动把你的命令记录到历史列表中,一般保存在用户目录下的.bash_history文件中.默认保存1000条,你也可以更改这个值 ...

  4. linux下svn命令使用大全

    最近经常使用svn进行代码管理,这些命令老是记不住,得经常上网查,终于找了一个linux下svn命令使用大全:1.将文件checkout到本地目录 svn checkout path(path是服务器 ...

  5. linux下tar命令详解

     linux下tar命令详解    tar是Linux环境下最常用的备份工具之一.tar(tap archive)原意为操作磁带文件,但基于Linux的文件操作机制,同样也可适用于普通的磁盘文件.ta ...

  6. Linux下history命令详解---转载

    Linux下History命令主要用于显示历史指令记录内容, 下达历史纪录中的指令 . >History命令语法:[www.linuxidc.com@linux]# history [n][ww ...

  7. Linux下Setuid命令! 转载

    Linux下Setuid命令! 转载  在Linux系统中每个普通用户都可以更改自己的密码,这是合理的设置. 问题是:用户的信息保存在文件/etc/passwd中,用户的密码保存在文件/etc/sha ...

  8. [转载]linux下svn命令使用大全

    原文地址:http://blog.chinaunix.net/uid-22150747-id-189264.html 最近经常使用svn进行代码管理,这些命令老是记不住,得经常上网查,终于找了一个li ...

  9. linux下的命令是如何运行的

    linux下的命令分为内建命令.可执行文件.脚本文件 shell终端里键入一个命令,如ls.cd.bash,shell会先查询一个环境变量PATH,它存了各种可执行文件的路径,输入$PATH可以打印变 ...

随机推荐

  1. 栈与递归的实现(Hanoi塔问题等等)

    函数中有直接或间接地调用自身函数的语句,这样的函数称为递归函数.递归函数用 得好,可简化编程工作.但函数自己调用自己,有可能造成死循环.为了避免死循环,要 做到两点: (1) 降阶.递归函数虽然调用自 ...

  2. Windows下安装Mycat

    Mycat 首先在安装Mycat之前,需要安装JDK1.7以上,可以在cmd环境下输入 java -version 查看本地安装的java版本 如果未安装或者版本在1.7以下,请重新安装. 安装JDK ...

  3. JVM内存模型 二

    在并发编程中,多个线程之间采取什么机制进行通信(信息交换),什么机制进行数据的同步? 在Java语言中,采用的是共享内存模型来实现多线程之间的信息交换和数据同步的. 线程之间通过共享程序公共的状态,通 ...

  4. JAVA 成员访问权限修饰符

    修饰符         类内部     package内         子类         其他 public             允许         允许                 ...

  5. IntelliJ IDEA2017 + Tomcat 设置热部署

    1.点击idea中tomcat设置 2.点击deployment查看Deploy at the server startup 中tomcat每次所运行的包是 xxxx:war 还是其他,如果是xxxx ...

  6. Bzoj1313 [HAOI2008]下落的圆盘

    有 n 个圆盘从天而降,后面落下的可以盖住前面的.最后按掉下的顺序,在平面上依次测得每个圆盘的圆心和半径,问下落完成后从上往下看,整个图形的周长是多少,即你可以看到的圆盘的轮廓的圆盘的轮廓总长.例如下 ...

  7. DotNETCore 学习笔记 依赖注入和多环境

    Dependency Injection ------------------------------------------------------------------------ ASP.NE ...

  8. [bzoj3132]上帝造题的七分钟——二维树状数组

    题目大意 你需要实现一种数据结构,支援以下操作. 给一个矩阵的子矩阵的所有元素同时加一个数. 计算子矩阵和. 题解 一看这个题,我就首先想到用线段树套线段树做. 使用二维线段树的错误解法 其实是第一次 ...

  9. linux内核同步之每CPU变量、原子操作、内存屏障、自旋锁【转】

    转自:http://blog.csdn.net/goodluckwhh/article/details/9005585 版权声明:本文为博主原创文章,未经博主允许不得转载.   目录(?)[-] 一每 ...

  10. AWS Ubuntu部署EMQTT的小坑

    Redis身份认证中的 is_superuser 表示不查检用户密码和ACL规则 如果是Ubuntu,集群设置节点名须改为:ubuntu@私有Ip,安全组最好相互开放所有端口 如果使用了ELB,EMQ ...