Sponsored Content
Top Forums Shell Programming and Scripting Echo displays strange output when '?' is used Post 303046005 by bedtime on Tuesday 21st of April 2020 01:23:13 PM
Old 04-21-2020
Echo displays strange output when '?' is used

In bash or sh terminal I get this strange response when using echo.


It's really best just to give you the code:

Code:
user@localhost:~$ text="?"; echo $text
P T V
user@localhost:~$ text='?'; echo $text
P T V
user@localhost:~$ text='?'; printf "$text\n"
?

So, printf works nicely but is there a way to get printf to take the escape sequences of variables?


I think it might have happened after messing around with Gnome-Shell extensions but not sure.


Any idea why it's happening or how to get rid of it?
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Strange output from grep

Hi, I am getting different output for grep depending which directory I am in. The following is a transcript of my session, I am using egrep but have also used grep -E. The directory names have been changed for security: $pwd /dir1/dir2/dir3/dir4 $echo 000000 |egrep -v $echo $? 1 $cd ..... (10 Replies)
Discussion started by: Bab00shka
10 Replies

2. AIX

who -r displays no output

Hello. I have an AIX machine at 6100-00. We had some strange activity since filling up /tmp. One symptom is that who -r displays no output. It doesn't hang just no output is displayed. We are going to boot the machine, but prior to that I'd like to dig a bit to see what may be causing the... (0 Replies)
Discussion started by: maficdan
0 Replies

3. UNIX for Dummies Questions & Answers

Creating a file that contains output from a command, and then displays itself

hey, I'm trying to create the command that will create a file named user.txt that contains the output of the command cut -d: -f1,5 /etc/passwd, and displays itself afterwards. I don't know how to bridge cat > user.txt with cut -d: -f1,5 /etc/passwd, or how display it afterwards. Any help would... (2 Replies)
Discussion started by: raidkridley
2 Replies

4. Shell Programming and Scripting

strange output

I had a similar script in solaris and it had no problem. I wrote this one in freeBSD and it gave me strange output. Can anyone please tell me why? thanks a lot #!/bin/sh #This is a shell script that checks file system capacity mounted on /home directory #If file system is over 90% capacity,... (1 Reply)
Discussion started by: k2k
1 Replies

5. Solaris

solaris 10 strange df output

hi, in solaris 10 SUN SPARC V245 server the following df -h output is showing . can i reuse the following disk space by deleting them /platform/sun4u-us3/lib/libc_psr/libc_psr_hwcap1.so.1 20G 5.2G 14G 27% /platform/sun4u-us3/lib/libc_psr.so.1... (2 Replies)
Discussion started by: phani.madiraju
2 Replies

6. Solaris

ls -l displays output with an error

when i use ls command it works normal but when i using additional parameter with ls like ls -l , ls -a... it shows a error followed by the output. # ls -l ./hgfs: Operation not applicable total 12861 -rw-r--r-- 1 root root 0 Jun 1 21:12 1 drwxr-xr-x 2 root root ... (4 Replies)
Discussion started by: chidori
4 Replies

7. UNIX for Advanced & Expert Users

strange output with du

Can someone please explain why I get two outputs with the du command? The first one gave me one. I also didn't ask for the second directory so why did it give that directory? $ du -h "/media/Part 1/Desktop/playlist" 775M /media/Part 1/Desktop/playlist $ du -h "/media/Part... (1 Reply)
Discussion started by: cokedude
1 Replies

8. UNIX for Advanced & Expert Users

Strange /etc/passwd output

Can someone please explain this to me? auser:x:500:500:Anne User:/home/auser:/bin/sh buser:x:501:501:Bob User:/home/buser:/bin/bash I'm used to it looking like this. What is the difference between the first name and second name? In the first case I had to use the first name to change my... (3 Replies)
Discussion started by: cokedude
3 Replies

9. Shell Programming and Scripting

Echo's strange output

Hi, Kindly help me to understand the behavior or logic of the below shell command $ echo $!# echo $echo $ $ $ echo !$# echo $# 0 I am using GNU bash, version 3.2.25(1)-release (2 Replies)
Discussion started by: royalibrahim
2 Replies

10. Shell Programming and Scripting

Script Output Displays Multiple Text

Hello there, I'm using a read-while loop to preserve the word Failed within a text file. For example, if the word Failed exist twice in a single text file, my STDOUT should re-direct to a new text file and display Failed twice. My output is attached to this thread. I would like output to... (4 Replies)
Discussion started by: SysAdminRialto
4 Replies
echo(1) 						      General Commands Manual							   echo(1)

NAME
echo - Writes its arguments to standard output SYNOPSIS
echo [-n] [string...] [Tru64 UNIX] The -n option is valid only if the environment variable CMD_ENV is set to bsd. Note The C shell has a built-in version of the echo command. If you are using the C shell, and want to guarantee that you are using the command described here, you must specify the full path /usr/bin/echo. See the csh(1) reference page for a description of the built-in command. STANDARDS
Interfaces documented on this reference page conform to industry standards as follows: echo: XCU5.0 Refer to the standards(5) reference page for more information about industry standards and associated tags. OPTIONS
[Tru64 UNIX] No newline is added to the output. The -n option is valid only if the environment variable CMD_ENV is set to bsd. Otherwise any -n operand is treated as a string rather than as a option. See the printf(1) reference page for use in portable applications. OPERANDS
The string to be displayed on standard output. The echo command recognizes the following special characters in the string: Displays an alert character. Displays a backspace character. Suppresses the newline character. All characters following c in the arguments are ignored. Displays a formfeed character. Displays a newline character. Displays a carriage-return character. Displays a tab character. Displays a vertical tab character. Displays a backslash character. Displays an 8-bit character whose value is the 1-, 2- or 3-digit octal number, number. The first digit of number must be a 0 (zero). DESCRIPTION
The echo command writes the specified string to standard output, followed by a newline character. The arguments are separated by spaces. Use the echo command to produce diagnostic messages in command files and to send data into a pipe. If there are no arguments, the echo command outputs a newline character. [Tru64 UNIX] The echo command described here is the program /usr/bin/echo. Both csh and sh shells contain built-in echo subcommands, which do not necessarily work in the same way as the /usr/bin/echo command. EXIT STATUS
The following exit values are returned: Successful completion. An error occurred. EXAMPLES
To write a message to standard output, enter: echo Please insert diskette . . . To display a message containing special characters as listed in DESCRIPTION, enclose the message in quotes, as follows: echo " I'm at lunch. I'll be back at 1 p.m." This skips three lines and displays the message: I'm at lunch. I'll be back at 1 p.m. Note You must enclose the message in quotation marks if it contains escape sequences such as . Otherwise, the shell treats the back- slash () as an escape character. The previous command example, entered without the quotes, results in the following output: nnnI'm at lunch.nI'll be back at 1 p.m. To use echo with pattern-matching characters, enter: echo The back-up files are: *.bak This displays the message The back-up files are: and then displays the file names in the current directory ending with To add a sin- gle line of text to a file, enter: echo Remember to set the shell search path to $PATH. >>notes This adds the message to the end of the file notes after the shell substitutes the value of the PATH shell variable. To write a message to the standard error output (sh only), enter: echo Error: file already exists. >&2 Use this in shell procedures to write error messages. If the >&2 is omitted, then the message is written to the standard output. ENVIRONMENT VARIABLES
The following environment variables affect the execution of echo: [Tru64 UNIX] This variable must set to bsd for the -n option to be valid. Otherwise any -n operand is treated as a string member. Provides a default value for the internationalization variables that are unset or null. If LANG is unset or null, the corresponding value from the default locale is used. If any of the internationalization vari- ables contain an invalid setting, the utility behaves as if none of the variables had been defined. If set to a non-empty string value, overrides the values of all the other internationalization variables. Determines the locale for the interpretation of sequences of bytes of text data as characters (for example, single-byte as opposed to multibyte characters in arguments). Determines the locale for the for- mat and contents of diagnostic messages written to standard error. Determines the location of message catalogues for the processing of LC_MESSAGES. SEE ALSO
Commands: csh(1), ksh(1), printf(1), Bourne shell sh(1b), POSIX shell sh(1p) Environment: environ(5) Standards: standards(5) echo(1)
All times are GMT -4. The time now is 03:26 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy