08 Input Output - kumar159man/MyShellLearning GitHub Wiki
As we are aware echo is the output command
myubuntu@myubuntu-VirtualBox:~$ read myname Manish myubuntu@myubuntu-VirtualBox:~$ echo $myname Manish
read command is used to read variables from command line
myubuntu@myubuntu-VirtualBox:~$ read -p "What is your pet's name " petsName What is your pet's name Chelsea myubuntu@myubuntu-VirtualBox:~$ echo $petsName Chelsea
If we don't give any variable name after read then the value get stored in default variable REPLY
myubuntu@myubuntu-VirtualBox:~$ read -p "Which shell you are using " Which shell you are using bash myubuntu@myubuntu-VirtualBox:~$ echo $REPLY bash
Let's write a shell script to understand this
myubuntu@myubuntu-VirtualBox:~/Desktop/shellScripts$ cat cmdArg.sh #!/usr/bin/bash echo $0 echo $1 echo $2 myubuntu@myubuntu-VirtualBox:~/Desktop/shellScripts$ ./cmdArg.sh first second ./cmdArg.sh first second
$0 ->script name $1 ->first argument
myubuntu@myubuntu-VirtualBox:~/Desktop/shellScripts$ ./cmdArg.sh "first arguments" "second arguments" ./cmdArg.sh first arguments second arguments
myubuntu@myubuntu-VirtualBox:~/Desktop/shellScripts$ cat cmdArg.sh #!/usr/bin/bash echo $0 echo $1 echo $2 echo "Number of arguments $#" myubuntu@myubuntu-VirtualBox:~/Desktop/shellScripts$ ./cmdArg.sh "first arguments" "second arguments" ./cmdArg.sh first arguments second arguments Number of arguments 2 myubuntu@myubuntu-VirtualBox:~/Desktop/shellScripts$
myubuntu@myubuntu-VirtualBox:~/Desktop/shellScripts$ cat cmdArg.sh #!/usr/bin/bash echo $0 echo $1 echo $2 echo "Number of arguments $#" echo "Argument list $@" echo "Argument list $*" myubuntu@myubuntu-VirtualBox:~/Desktop/shellScripts$ ./cmdArg.sh "first arguments" "second arguments"clear ./cmdArg.sh first arguments second argumentsclear Number of arguments 2 Argument list first arguments second argumentsclear Argument list first arguments second argumentsclear
myubuntu@myubuntu-VirtualBox:~/Desktop/shellScripts$ cat cmdArg.sh #!/usr/bin/bash echo $0 echo $1 echo $2 echo $10 echo "Number of arguments $#" echo "Argument list $@" echo "Argument list $*" myubuntu@myubuntu-VirtualBox:~/Desktop/shellScripts$ ./cmdArg.sh first second 3 4 5 6 7 8 9 10 ./cmdArg.sh first second first0 Number of arguments 10 Argument list first second 3 4 5 6 7 8 9 10 Argument list first second 3 4 5 6 7 8 9 10
myubuntu@myubuntu-VirtualBox:~/Desktop/shellScripts$ cat cmdArg.sh #!/usr/bin/bash echo $0 echo $1 echo $2 echo ${10} echo "Number of arguments $#" echo "Argument list $@" echo "Argument list $*" myubuntu@myubuntu-VirtualBox:~/Desktop/shellScripts$ ./cmdArg.sh first second 3 4 5 6 7 8 9 10 ./cmdArg.sh first second 10 Number of arguments 10 Argument list first second 3 4 5 6 7 8 9 10 Argument list first second 3 4 5 6 7 8 9 10