11-07-2008
Changing directories using variables.
I can't seem to solve this problem.
![Mad Smilie](https://www.unix.com/images/smilies/mad.gif)
![Mad Smilie](https://www.unix.com/images/smilies/mad.gif)
Please assist. Thanks!
#!/bin/bash
UserDir="$(echo ~$1)"
echo "Changing directory with variables"
cd "$UserDir"
echo "Changing directory without variables"
cd ~pearsn
pwd
Output:
pearsn$ sh -x ./test.bash pearsn
++ echo '~pearsn'
+ UserDir='~pearsn'
+ echo 'Changing directory with variables'
Changing directory with variables
+ cd '~pearsn'
./test.bash: line 6: cd: ~pearsn: No such file or directory
+ echo 'Changing directory without variables'
Changing directory without variables
+ cd /Users/pearsn
+ pwd
/Users/pearsn
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
I just want to exit my script in a new directory from a bash shell. Problem is that the script internally changes to the directory I want to move to, however when exits is still in the original directory. Does that make sense?
ie usage: goto null
changing from /usr/bin/xtra/test/test3/
... (8 Replies)
Discussion started by: Shakey21
8 Replies
2. Solaris
Hi all,
can some one help me in chmod command, and let me know the various combinations for this command.
for : eg chmod -R 777 <dir names>
this gives all rights to all but i want the specific access levels kindly help me out in this issue.
Thank you,
lakshmanan (2 Replies)
Discussion started by: lakshmananl
2 Replies
3. Shell Programming and Scripting
hi friends,
i'm new to shell scripting,can i know how to change the environment variables without altering anythng in .bash_profile as the change in it is for a specific user but i want the change to be available to every user who logs in.
bye. (1 Reply)
Discussion started by: amit4g
1 Replies
4. Shell Programming and Scripting
Hi All
I need to create a script which would change Permissions to 775
All the Files and directories will be mentioned in the Paramter files
Can anyone give a Hint how to proceed in this ??
THanks (1 Reply)
Discussion started by: ranga27
1 Replies
5. Solaris
In FORMAT->ANALYZE->SETUP there's a couple variables you can set for the various functions. However, everytime I exit format it reverts back to the defaults. Is there a file I can edit somewhere to change these default settings? (0 Replies)
Discussion started by: cheetobandito
0 Replies
6. Shell Programming and Scripting
I'm having a spot of trouble. I'm trying to test three variables for a NULL value in a bash shell script. If a null value is detected in the variable to set it to set the variable to a default value.
here is what I have:
testResponseA=3
testResponseB=
testResponseC=4
for test in... (5 Replies)
Discussion started by: kaltekar
5 Replies
7. UNIX for Dummies Questions & Answers
How can i create a file, for example with a touch command, in a different directory from the current one i am in, in one single line command? (1 Reply)
Discussion started by: glock1800
1 Replies
8. Shell Programming and Scripting
I would like to extract directories from a specific place and keep them into an array of variables to run functions into it. Example,
bash-3.00$ls
adrian bryan caren derrick
I want to keep each directory names into a variable
adrian --> document
bryan --> document
caren --> document... (3 Replies)
Discussion started by: lynxlee
3 Replies
9. Shell Programming and Scripting
i'm trying to write a script that has 2 variables, and uses the 1st variable as a number and the 2nd a name to create directories. so if you typed in ./myscript 5 week, it would create 5 directories named week1 - week5. whenever i run this, i get an error message saying week5 already exists, so i... (3 Replies)
Discussion started by: layne2kim
3 Replies
10. UNIX for Beginners Questions & Answers
#!/bin/bash
X=$(</home/cogiz/computerhand.txt) # (3S 8C 2H 6D QC 8S 4H 5H)
Y=$(</home/cogiz/topcardinplay.txt) # KS
A=( "${Y::1}" )
B=( "${Y:1}" )
for e in ${X}; do
if ]; then # searching for valid cards K,S or 8
... (0 Replies)
Discussion started by: cogiz
0 Replies
READDIR(3) 1 READDIR(3)
readdir - Read entry from directory handle
SYNOPSIS
string readdir ([resource $dir_handle])
DESCRIPTION
Returns the name of the next entry in the directory. The entries are returned in the order in which they are stored by the filesystem.
PARAMETERS
o $dir_handle
- The directory handle resource previously opened with opendir(3). If the directory handle is not specified, the last link opened
by opendir(3) is assumed.
RETURN VALUES
Returns the entry name on success or FALSE on failure.
Warning
This function may return Boolean FALSE, but may also return a non-Boolean value which evaluates to FALSE. Please read the section on
Booleans for more information. Use the === operator for testing the return value of this function.
EXAMPLES
Example #1
List all entries in a directory
Please note the fashion in which readdir(3)'s return value is checked in the examples below. We are explicitly testing whether the
return value is identical to (equal to and of the same type as--see Comparison Operators for more information) FALSE since other-
wise, any directory entry whose name evaluates to FALSE will stop the loop (e.g. a directory named "0").
<?php
if ($handle = opendir('/path/to/files')) {
echo "Directory handle: $handle
";
echo "Entries:
";
/* This is the correct way to loop over the directory. */
while (false !== ($entry = readdir($handle))) {
echo "$entry
";
}
/* This is the WRONG way to loop over the directory. */
while ($entry = readdir($handle)) {
echo "$entry
";
}
closedir($handle);
}
?>
Example #2
List all entries in the current directory and strip out . and ..
<?php
if ($handle = opendir('.')) {
while (false !== ($entry = readdir($handle))) {
if ($entry != "." && $entry != "..") {
echo "$entry
";
}
}
closedir($handle);
}
?>
SEE ALSO
is_dir(3), glob(3), opendir(3), scandir(3).
PHP Documentation Group READDIR(3)