Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

344
Vistas
while running this programe i occured one error as ambigous redirect

the following line in my bash script

cat >> $file_name 

give me this error:

./l7.sh: line 12: $file_name: ambiguous redirect

Here are the full code

https://github.com/vats147/public/blob/main/l7.sh

why?

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Into the parameter file_name you must assign $1, which will pass to the current file as an input parameter.

#! /bin/bash

echo -e " Enter file name : \c"
read file_name=$1
if [ -f $file_name ]
then
    if [ -w $file_name ]
    then
        echo " type some text data. to quit press enter "
        #cat > $file_name(single angular bracket use for overwritten)
        #cat >> $file_name(two angular bracket use for appending a text)
        cat >> $file_name
    else
        echo " file not have write permission"      
    fi
else
    echo "file not exist"
fi

These are positional arguments of the script.

Executing ./script.sh Hello World will make

$0 = ./script.sh
$1 = Hello
$2 = World

Note

If you execute ./script.sh, $0 will give output ./script.sh but if you execute it with bash script.sh it will give output script.sh.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda