Issue with type force PATH search Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30pm US/Eastern) 2019 Community Moderator Election Results Why I closed the “Why is Kali so hard” questionBash script class path issue with javaWhen is /etc/bash.bashrc invoked?How do I explicitly and safely force the use of a built-in command in bashUse system command instead of Bash builtin without specifying the full pathWhat does “is hashed” mean when using the type command?bash while/read loop behaves differently in a mips/musl/busybox based VMHow to stop fish shell from underlining path?Don't search PATH when sourcing a filegetting only the path out of `type -p prog` commandPortable way to run command without PATH from bash script
Why is there so little support for joining EFTA in the British parliament?
How to ask rejected full-time candidates to apply to teach individual courses?
Does the main washing effect of soap come from foam?
What does 丫 mean? 丫是什么意思?
"Destructive power" carried by a B-52?
Why are two-digit numbers in Jonathan Swift's "Gulliver's Travels" (1726) written in "German style"?
The Nth Gryphon Number
Statistical analysis applied to methods coming out of Machine Learning
How do you write "wild blueberries flavored"?
Marquee sign letters
My mentor says to set image to Fine instead of RAW — how is this different from JPG?
Inverse square law not accurate for non-point masses?
Noise in Eigenvalues plot
.bashrc alias for a command with fixed second parameter
newbie Q : How to read an output file in one command line
3D Masyu - A Die
Found this skink in my tomato plant bucket. Is he trapped? Or could he leave if he wanted?
Baking rewards as operations
Table formatting with tabularx?
As a dual citizen, my US passport will expire one day after traveling to the US. Will this work?
Diophantine equation 3^a+1=3^b+5^c
Keep at all times, the minus sign above aligned with minus sign below
By what mechanism was the 2017 UK General Election called?
calculator's angle answer for trig ratios that can work in more than 1 quadrant on the unit circle
Issue with type force PATH search
Announcing the arrival of Valued Associate #679: Cesar Manara
Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30pm US/Eastern)
2019 Community Moderator Election Results
Why I closed the “Why is Kali so hard” questionBash script class path issue with javaWhen is /etc/bash.bashrc invoked?How do I explicitly and safely force the use of a built-in command in bashUse system command instead of Bash builtin without specifying the full pathWhat does “is hashed” mean when using the type command?bash while/read loop behaves differently in a mips/musl/busybox based VMHow to stop fish shell from underlining path?Don't search PATH when sourcing a filegetting only the path out of `type -p prog` commandPortable way to run command without PATH from bash script
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;
This is Bash. The behavior is similar in fish.
$ which python
/usr/bin/python
$ alias py=python
$ type py
py is aliased to `python'
And then, running type -P py
prints nothing, where as I expected to print /usr/bin/pyton
in a similar fashion to what is seen below.
$ type ls
ls is aliased to `ls --color=auto'
$ type -P ls
/bin/ls
The documentation for the -P
option reads
-P force a PATH search for each NAME, even if it is an alias,
builtin, or function, and returns the name of the disk file
that would be executed
I've confirmed that /usr/bin
(the directory where python
is located) is in PATH
.
What is going on here?
bash fish shell-builtin
add a comment |
This is Bash. The behavior is similar in fish.
$ which python
/usr/bin/python
$ alias py=python
$ type py
py is aliased to `python'
And then, running type -P py
prints nothing, where as I expected to print /usr/bin/pyton
in a similar fashion to what is seen below.
$ type ls
ls is aliased to `ls --color=auto'
$ type -P ls
/bin/ls
The documentation for the -P
option reads
-P force a PATH search for each NAME, even if it is an alias,
builtin, or function, and returns the name of the disk file
that would be executed
I've confirmed that /usr/bin
(the directory where python
is located) is in PATH
.
What is going on here?
bash fish shell-builtin
add a comment |
This is Bash. The behavior is similar in fish.
$ which python
/usr/bin/python
$ alias py=python
$ type py
py is aliased to `python'
And then, running type -P py
prints nothing, where as I expected to print /usr/bin/pyton
in a similar fashion to what is seen below.
$ type ls
ls is aliased to `ls --color=auto'
$ type -P ls
/bin/ls
The documentation for the -P
option reads
-P force a PATH search for each NAME, even if it is an alias,
builtin, or function, and returns the name of the disk file
that would be executed
I've confirmed that /usr/bin
(the directory where python
is located) is in PATH
.
What is going on here?
bash fish shell-builtin
This is Bash. The behavior is similar in fish.
$ which python
/usr/bin/python
$ alias py=python
$ type py
py is aliased to `python'
And then, running type -P py
prints nothing, where as I expected to print /usr/bin/pyton
in a similar fashion to what is seen below.
$ type ls
ls is aliased to `ls --color=auto'
$ type -P ls
/bin/ls
The documentation for the -P
option reads
-P force a PATH search for each NAME, even if it is an alias,
builtin, or function, and returns the name of the disk file
that would be executed
I've confirmed that /usr/bin
(the directory where python
is located) is in PATH
.
What is going on here?
bash fish shell-builtin
bash fish shell-builtin
edited Apr 4 at 9:08
Git Gud
asked Apr 4 at 8:50
Git GudGit Gud
1375
1375
add a comment |
add a comment |
2 Answers
2
active
oldest
votes
This:
force a PATH search for each NAME, even if it is an alias,
does not mean that bash will expand the alias and then search for the expanded command. It means that, if there were a command foo
, and also an alias foo
, the type -P foo
will still look for the command named foo
, even though there's an alias masking it. So bash isn't expanding py
in type -P py
to be python
, and it won't show /usr/bin/python
.
Well, this could be clearer. Thanks.
– Git Gud
Apr 4 at 8:56
Seems clear enough.NAME
is the argument totype
, not an alias expansion of the argument.
– chepner
Apr 4 at 18:42
add a comment |
What’s going on is that your shell is looking for a binary named py
in each directory on your PATH
, and not finding any.
type -P
doesn’t interpret aliases or functions; it forces the given name to be searched on the path, ignoring any other available command not of type “file” with the same name.
(There’s an added subtlety with type -p
and type -P
: they take hashes into account, so they will show a hashed value if one exists, without looking in the PATH
. But that’s not involved here.)
add a comment |
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "106"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f510450%2fissue-with-type-force-path-search%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
This:
force a PATH search for each NAME, even if it is an alias,
does not mean that bash will expand the alias and then search for the expanded command. It means that, if there were a command foo
, and also an alias foo
, the type -P foo
will still look for the command named foo
, even though there's an alias masking it. So bash isn't expanding py
in type -P py
to be python
, and it won't show /usr/bin/python
.
Well, this could be clearer. Thanks.
– Git Gud
Apr 4 at 8:56
Seems clear enough.NAME
is the argument totype
, not an alias expansion of the argument.
– chepner
Apr 4 at 18:42
add a comment |
This:
force a PATH search for each NAME, even if it is an alias,
does not mean that bash will expand the alias and then search for the expanded command. It means that, if there were a command foo
, and also an alias foo
, the type -P foo
will still look for the command named foo
, even though there's an alias masking it. So bash isn't expanding py
in type -P py
to be python
, and it won't show /usr/bin/python
.
Well, this could be clearer. Thanks.
– Git Gud
Apr 4 at 8:56
Seems clear enough.NAME
is the argument totype
, not an alias expansion of the argument.
– chepner
Apr 4 at 18:42
add a comment |
This:
force a PATH search for each NAME, even if it is an alias,
does not mean that bash will expand the alias and then search for the expanded command. It means that, if there were a command foo
, and also an alias foo
, the type -P foo
will still look for the command named foo
, even though there's an alias masking it. So bash isn't expanding py
in type -P py
to be python
, and it won't show /usr/bin/python
.
This:
force a PATH search for each NAME, even if it is an alias,
does not mean that bash will expand the alias and then search for the expanded command. It means that, if there were a command foo
, and also an alias foo
, the type -P foo
will still look for the command named foo
, even though there's an alias masking it. So bash isn't expanding py
in type -P py
to be python
, and it won't show /usr/bin/python
.
answered Apr 4 at 8:55
murumuru
38k590166
38k590166
Well, this could be clearer. Thanks.
– Git Gud
Apr 4 at 8:56
Seems clear enough.NAME
is the argument totype
, not an alias expansion of the argument.
– chepner
Apr 4 at 18:42
add a comment |
Well, this could be clearer. Thanks.
– Git Gud
Apr 4 at 8:56
Seems clear enough.NAME
is the argument totype
, not an alias expansion of the argument.
– chepner
Apr 4 at 18:42
Well, this could be clearer. Thanks.
– Git Gud
Apr 4 at 8:56
Well, this could be clearer. Thanks.
– Git Gud
Apr 4 at 8:56
Seems clear enough.
NAME
is the argument to type
, not an alias expansion of the argument.– chepner
Apr 4 at 18:42
Seems clear enough.
NAME
is the argument to type
, not an alias expansion of the argument.– chepner
Apr 4 at 18:42
add a comment |
What’s going on is that your shell is looking for a binary named py
in each directory on your PATH
, and not finding any.
type -P
doesn’t interpret aliases or functions; it forces the given name to be searched on the path, ignoring any other available command not of type “file” with the same name.
(There’s an added subtlety with type -p
and type -P
: they take hashes into account, so they will show a hashed value if one exists, without looking in the PATH
. But that’s not involved here.)
add a comment |
What’s going on is that your shell is looking for a binary named py
in each directory on your PATH
, and not finding any.
type -P
doesn’t interpret aliases or functions; it forces the given name to be searched on the path, ignoring any other available command not of type “file” with the same name.
(There’s an added subtlety with type -p
and type -P
: they take hashes into account, so they will show a hashed value if one exists, without looking in the PATH
. But that’s not involved here.)
add a comment |
What’s going on is that your shell is looking for a binary named py
in each directory on your PATH
, and not finding any.
type -P
doesn’t interpret aliases or functions; it forces the given name to be searched on the path, ignoring any other available command not of type “file” with the same name.
(There’s an added subtlety with type -p
and type -P
: they take hashes into account, so they will show a hashed value if one exists, without looking in the PATH
. But that’s not involved here.)
What’s going on is that your shell is looking for a binary named py
in each directory on your PATH
, and not finding any.
type -P
doesn’t interpret aliases or functions; it forces the given name to be searched on the path, ignoring any other available command not of type “file” with the same name.
(There’s an added subtlety with type -p
and type -P
: they take hashes into account, so they will show a hashed value if one exists, without looking in the PATH
. But that’s not involved here.)
answered Apr 4 at 8:54
Stephen KittStephen Kitt
182k26420498
182k26420498
add a comment |
add a comment |
Thanks for contributing an answer to Unix & Linux Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f510450%2fissue-with-type-force-path-search%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown