How to replace a word thr shell script

Hi,
I need a shell script which should read a file(a.txt)
and need to update the same file( means only replace a word with another one in the same file)
my unix version is SunOS and i am using ksh
could you pls provide me some better way.
My failured trails are as below
suppose a.txt file having data like,
column1 column2 column3
data1 data2 data3
and my script is,
#!/usr/bin/ksh
patha=/tmp
filea=a.txt
sed '/column2/s//column4/g' $patha/$filea > $patha/$filea
And also pls provide how to add data(data into new line) into file(a.txt)
Thanks in advance.

This is an Oracle SQL and PL/SQL forum.
If you want to learn how to write unix shell scripts I suggest you search the internet for a suitable unix forum.

Similar Messages

  • How to execute sql-queries through shell scripting in linux?

    How to execute sql-queries through shell scripting in linux?

    http://www.oracle.com/technology/pub/articles/saternos_scripting.html
    Two simple examples:
    #!/usr/bin/env bash
    set_orafra () {
       orafra=`echo 'set heading off
       select name from v$recovery_file_dest;
       exit' | sqlplus -s / as sysdba`
    set_orafra
    echo $orafra
    #!/usr/bin/env bash
    export ORACLE_SID=instance_name
    export ORACLE_HOME=/path_to_oracle_home_directory
    export LD_LIBRARY_PATH=$ORACLE_HOME/lib
    export PATH=/$ORACLE_HOME/bin/$PATH
    $ORACLE_HOME/bin/sqlplus -s <<EOF
    connect scott/tiger@my_instance_name
    INSERT INTO table VALUES (sysdate);
    exit
    EOFEdited by: Markus Waldorf on Sep 17, 2010 12:19 AM

  • How to prepare for Converting UNIX shell scripts to PL/SQL

    Hi All
    I was said, that i may have to convert a lot of unix shell script to PL/SQL, what are the concepts i need to know to do it efficently,
    what are the options PL/SQL is having to best do that.
    I know the question is little unclear, but I too dont have much inputs about that i'm sorry for that, just its a question of how
    to prepare myself to do it the best way. What are the concepts i have to be familiar with.
    Many Thanks
    MJ

    Just how much work is involved, is hard to say. Many years ago I also wrote (more than once) a complete ETL system using a combination of shell scripts, SQL*Plus and PL/SQL.
    If the PL/SQL code is fairly clean, uses bind variables and not substitution variables, then it should be relatively easy to convert that PL/SQL code in the script to a formal stored procedure in the database.
    There is however bits and pieces that will be difficult to move into the PL/SQL layer as it requires new software - like for example FTP'ing a file from the production server to the ETL server. This can be done using external o/s calls from within PL/SQL. Or, you can install a FTP API library in PL/SQL and FTP that file directly into a CLOB and parse and process the CLOB.
    Think of Oracle as an o/s in its own right. In Oracle we have a mail client, a web browser, IPC methods like pipes and messages queues, cron, file systems, web servers and services, etc. And PL/SQL is the "shell scripting" (times a thousand) language of this Oracle o/s .
    In some cases you will find it fairly easy to map a Unix o/s feature or command to one in Oracle. For example, a Unix wget to fetch a HTML CSV file can easily be replaced in Oracle using a UTL_HTTP call.
    On the other hand, techniques used in Unix like creating a pipe to process data, grep for certain stuff and awk certain tokens for sed to process further... in Oracle this will look and work a lot different and use SQL.

  • How to prevent Automator's "run shell script" to create fully decomposed forms of my strings ?

    I am using Automator's "run shell script" and I am seeing that it outputs fully decomposed forms of my strings.
    For example, when I set the action to "echo été" in a service (with "Replace selected text" activated) and run that into a Textwrangler window, I'll get fully decomposed forms that Textwrangler won't understand. But when I simply type that command into Terminal, I get my string in composed form.
    The problem is not the display issue, but the fact that if I want to run grep for example in "run shell script", I will not be able to find the proper strings since the forms are different.

    Originally I was using $@ to parse a string and get the result pasted by the service. That was a while ago. There, I noticed that some Japanese characters were messed up. Basically all the kana characters that come with voicing markers like が-ga (instead of か-ka) etc. I did not have the time to pursue that issue though.
    Then, last night, I found that a colleague of mine had tried to use $@ to feed to a local dictionary application called ding (http://ftp.tu-chemnitz.de/pub/Local/urz/ding/). His problem was with characters that had umlauts. After verifying how he wrote his action I remembered that I had similar issues with Japanese.
    Basically his command was "/path/to/ding $@"
    That's supposed to use the selected string as an argument to pass to ding, which will launch a Wish application where the string is used as the searched item.
    From Terminal, that works a treat. But the exact same line in Automator (with input as argument, not as stdin) messed the composition and the resulting string was not recognized by ding as a match to what it was supposed to match.
    So, I tried a few things to get to the core of the issue and found that a simple "echo [accented characters]" was enough to reproduce the difference in string handling between Automator and Terminal. That difference is also reproduced on a number of person's machines.
    I have a number of services that basically revolve on "run shell script" actions and involve 3rd party application outputs, preference files etc. so it would not be convenient to show that to you.
    I have sent a mail about this issue to the automator list yesterday too:
    http://lists.apple.com/archives/Automator-users/2011/Jun/msg00004.html

  • Problem with backtick replacing apostroph in applescript/shell script

    I've got a script that appears to be using a backtick instead of an apostrophe which is causing an error in my shell script. For the life of me I can't seem to find where the error is being generated?
    The script is attached below. I'm using Exiftool, an app that writes metadata to image files. The shell script
    set cmd to "exiftool -CopyrightNotice=" & exifCopyright & " " & thisFilePath & ""
    set theResult to do shell script cmd
    works fine but the following shell script
    set cmd to "exiftool" & space & authorStr & " " & thisFilePath & ""
    set theResult to do shell script cmd
    returns the error "sh: -c: line 0: unexpected EOF while looking for matching `''
    sh: -c: line 1: syntax error: unexpected end of file" number 2. The code in the event log in applescript editor looks exactly the same to me but one fails in the shell script.
    It has been suggested by the developer of Exiftool, Phil Harvey, that there is a backtick in the second shell script. I read somewhere in the applescript docs that this is due to a change in OS 10.6? Any suggestions on how to fix this?
    Thanks.
    Pedro

    Yea, the authorStr value has a space like "Joe Smith"
    Then you need to use quoted form of this string, too:
    set cmd to "exiftool " & quoted form of authorStr & space & thisFilePath
    although the format looks wrong to me - shouldn't there be some kind of switch, such as "-author=' before it?
    You have to consider how you'd enter this at the command line to work out how best to translate it to AppleScript. For example, if the command line version were:
    exiftool -author='John Doe' /path/to/some.jpg
    you can see the quotes are around the name, not the entire -author switch. In this case you should be looking at something like:
    set authorStr to "John Doe"
    set theFilePath to "/path/to/some.jpg"
    set theCmd to "exiftool -author=" & quoted form of authorStr & space & quoted form of theFilePath
    Now you could, of course, use quoted form when you create the variables (e.g. set authorStr to quoted form of "John Doe"), but that may screw you up later on if/when you try to use authorStr in some other way, so I find it best to use quoted form only where it's needed.

  • How to avoid password prompt in shell script for zip password protection

    Hi
    I am trying to set password protection to my oracle database export backup. Once the backup completed, it should compress with a password protection. Thats the plan. Initialy we were using the gzip for the compression. Then realized that there is no password protection for the gzip. Started using zip option. I tried using
    zip -P <password> filename
    But it was throwing below error.
    -bash-3.2$ zip -P expreports REPORTS_2013FEB14.dmp
    zip warning: missing end signature--probably not a zip file (did you
    zip warning: remember to use binary mode when you transferred it?)
    zip warning: (if you are trying to read a damaged archive try -F)
    zip error: Zip file structure invalid (REPORTS_2013FEB14.dmp)
    Not quite sure why.
    Then I used zip -e REPORTS_2013FEB14.dmp.zip REPORTS_2013FEB14.dmp
    But this prompting for the password. As I am trying to put the command in the script. It will be tough if it prompts for the password.
    I would like to know how to avoid the password prompting by saving somewhere or how the code should be written. Tried using expect feature of shell script. Below was the code I tried. It didnt work.
    [oracle@SF40V6636 test]$ cat repexp.sh
    zip -e REPORTS_imp.log.zip REPORTS_imp.log
    expect "Enter password:"
    send "imprep"
    expect "Verify password:"
    send "imprep"
    So please help in avoiding this password prompt or let me know how to change the code.
    Thanks
    SHIYAS M

    How about using gpg and adding a secret key to the requirement of a password? No one should be able to decrypt your file, not by knowing only the password.
    1. Generate a public and private key pair:
    $ gpg --gen-key
    When it shows "We need to generate a lot of random bytes…" open another terminal session and type "dd if=/dev/sda of=/dev/null" to create traffic. When the public and secret key created and signed you can Ctrl-C the dd command.
    To see what you have created:
    $ gpg --list-keys
    2. Encrypt and gzip your stuff:
    $ tar zcf stuff.tgz file_or_folder
    $ gpg recipient "Some Name" encrypt stuff.tgz
    $ rm -f stuff.tgz
    3. Decrypt and extract the archive:
    $ gpg batch yes --passphrase "password" -d stuff.tgz.gpg > stuff.tgz
    $ tar zxvf stuff.tgz
    Again, knowing the password alone will not let anybody decrypt your stuff.

  • How to use encoded password in shell script ?

    Hi everybody,
    For make a load file in oracle table, I'm using a LKM File to Oracle updatding with a sqlldr (shell script).
    My problem is very simple : For security reason in this shell-script , I don't want to see in clear the password of the Oracle user for database connection. Is it possible and how do it ?
    Thanks in advance

    Hi-
    Yes it is possible by the way of KM custamization, You need to modify LKM call sqlldr via jython step to pass the user info and password as variable instead of ODI method. Try this command in your KM step:
    userid=#GLOBAL.user/#GLOBAL.psw
    Hope this will work for you.
    Thanks,
    Saravanan Rajavel

  • How to replace a word on richtextbox

    hi
    how can i replace a word in one richtext box by code?
    like i have the richtexbox with the word TEST and i wanna to replace that word (TEST) by DONE for example

    how can i replace a word in one richtext box by code?
    Use the string Replace function with the rich text box Text property:
    RichTextBox1.Text = RichTextBox1.Text.Replace("TEST", "DONE")

  • How to call a procedure from  Shell Script

    Friends,
    How can i call a procedure from a shell script ? If any one know the answer , let me know immediately .
    Thanks in advance .
    Chakks

    We connect using SQLPlus commands on the Unix server:-
    Our code block is below:- We've got DBMS_OUTPUT in the procedure, hence the spooling. You don't need all this, but you do need the sqlplus directory, etc... in your profile.
    sqlplus -s <<EOF > ${CREATE_LOG_FLE}
    $UserName/$Password@$SID
    SET SERVEROUTPUT ON SIZE 1000000;
    spool ${CREATE_LOG_FLE}
    EXECUTE $STORED_PROC(${Months}, ${DeleteRecords});
    EOF
    Hope that helps

  • How do i print parameters in shell script through java

    Hi,
    I am sorry if have posted this query in wrong thread!!!
    How do i print the parameter in shell script which are passed from java programm?
    i have tried in different ways.. but the actual param value is not printing when i execute the java programm
    java code is here
    import java.io.IOException;
    public class TestShell {
          * @param args
    public static void main(String[] args) {
             String inputFilePath=args[0];
              String inputFileName=args[1];
              String outputFileName=args[2];
              String outputFilePath=args[3];
              Runtime r = Runtime.getRuntime();
              String[] cmdArray = new String[]{"Test.sh",inputFilePath, inputFileName, outputFileName, outputFilePath};
              try {
                   r.exec(cmdArray);
                   System.out.println("Test.sh executed successfully.");
              } catch (IOException e) {
                   e.printStackTrace();
    }I need a shell script to print paramenters (inputFilePath, inputFileName, outputFileName, outputFilePath)
    Thanks,
    Jasmin

    user13836688 wrote:
    But my code is something look like thisWell unless I've completely lost my marbles (possible) or Java Runtime.exec() does something I've never heard of, I can't even see how that will execute. For a start, assignments in the Bourne shell take the form ofinfile = $inputFilename;orinfile = "inputFilename";not what you've got; and the first form would only work if you've set the appropriate environment variables.
    Are you sure you're not confusing this with a Javascript script?
    Winston
    Edited by: YoungWinston on Apr 18, 2011 12:51 PM
    And BTW, you don't need to put ';' at the end of each statement, unless there's more than one on a line.
    Edited by: YoungWinston on Apr 18, 2011 12:54 PM
    BTW2: 'printf "%d", inpath' also looks very dodgy, since 'inpath' is unlikely to be a number (in fact, it's unlikely to be anything).
    I think you might want to get a book on scripting.

  • How To Execute SQL Statements From Shell Scripts?

    I need to extecute some SELECT statements from a shell scripts. Could anybody kindly tell me how to do that, or which document i should refer to ? Thank you very much!

    You can execute SQLPlus with the SQL in a file (sqlplus -s @<sql-script>).

  • How to solve this problem in shell script: unexpected end of file

    Hello,
    I need to connect to each databases listed in /etc/oratab and check which database is shutdown(or mounted-only) and which database is opened to accept connection. However, following shell script gives me this error message:
    $>./check_is_db_runing.sh
    ./check_is_db_runing.sh: line 39: syntax error: unexpected end of file
    Could anyone please help me to solve this problem, why the code (line 29 to 32) does not work in the LOOP? It works without the LOOP.
    Thanks in advance!!!
    1 #!/bin/bash
    2
    3 LOGDIR=/data03/oracle/dbscripts
    4 ORATABFILE=/etc/oratab
    5
    6 cat $ORATABFILE | while read LINE
    7 do
    8 case $LINE in
    9 \#*) ;; #comment-line in oratab
    10 *)
    11 ORACLE_SID=`echo $LINE | awk -F: '{print $1}' -`
    12 if [ "$ORACLE_SID" = '*' ] ; then
    13 # NULL SID - ignore
    14 ORACLE_SID=""
    15 continue
    16 fi
    17
    18 # Proceed only if last field is 'Y'
    19 if [ "`echo $LINE | awk -F: '{print $NF}' -`" = "Y" ] ; then
    20 if [ `echo $ORACLE_SID | cut -b 1` != '+' ]; then
    21
    22 ORACLE_HOME=`echo $LINE | awk -F: '{print $2}' -`
    23 PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/etc
    24 export ORACLE_SID ORACLE_HOME PATH
    25 LOGFILE=$LOGDIR/check_$ORACLE_SID.log
    26 touch $LOGFILE
    27 #echo $LOGFILE
    28
    29 $ORACLE_HOME/bin/sqlplus -s "/ as sysdba" << EOF > $LOGFILE
    30 select * from global_name;
    31 exit
    32 EOF
    33
    34 fi
    35 fi
    36 ;;
    37 esac
    38 done

    This code works ie. generates logs with sql result - slightly modified to be runable:
    #!/bin/bash
    LOGDIR=/tmp
    ORATABFILE=/etc/oratab
    cat $ORATABFILE | while read LINE
    do
    case $LINE in
    \#*) ;; #comment-line in oratab
    ORACLE_SID=`echo $LINE | awk -F: '{print $1}' -`
    if \[ -z $ORACLE_SID \] ; then
    # NULL SID - ignore
    ORACLE_SID=""
    continue
    # Proceed only if last field is 'Y'
    else
    ORACLE_HOME=`echo $LINE | awk -F: '{print $2}' -`
    PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/etc
    export ORACLE_SID ORACLE_HOME PATH
    LOGFILE=$LOGDIR/check_$ORACLE_SID.log
    touch $LOGFILE
    #echo $LOGFILE
    $ORACLE_HOME/bin/sqlplus -s "/ as sysdba" << EOF > $LOGFILE
    select * from global_name;
    exit
    EOF
    fi
    esac
    done

  • How to truncate text in a shell script? [SOLVED]

    Here is my shell script...
    #!/bin/bash
    case "$1" in
    artist) dcop amarok player artist ;;
    title) dcop amarok player title ;;
    esac
    I want it to send the artist and title truncated if they are more than 20 characters and with a little '...' ellipsis at the end. Can anyone help me?
    Last edited by tony5429 (2008-03-12 13:28:24)

    This might be a starting point, even though I don't know the answer: http://developer.apple.com/documentatio … 03521-SW16 (gosh what a long URL)
    edit
    wow, I was slow
    Last edited by finferflu (2008-03-11 20:52:38)

  • How to Call Multiple Sessions through Shell scripting

    Dear Members,
    I have a scenario where I load data into target table from 20 different source tables.
    For this I have written three procedures where there exists an bulk insert executed on a same table in every procedure. Now I have to call these procedures simultaneously so that
    all three bulk loads are executed at once in different sessions.
    For this I have to write a shell script which opens 3 different sessions and execute all these packages at once.
    Can you guide me through.

    When you call sqlplus in your shell script, put a & at the end so that it runs the SQL scripts in the background. For instance:
    #!/bin/bash
    ...oracle home stuff
    $ORACLE_HOME/bin/sqlplus user/pass @script.sql &
    $ORACLE_HOME/bin/sqlplus user/pass @script2.sql &
    $ORACLE_HOME/bin/sqlplus user/pass @script3.sql &

  • How we change a word to Super Script in ADOBE Form

    Hi,
    I have scenario where I need to change a word to super script. I am getting the super script value in a variable, now When displaying on a abode form in a particular cell I have to concatenate this word and make sure that it appears as Super Script to the word preceding it.
    Really appreciate if someone can post suggestions and ideas to do it.
    Thank you,
    Srikanth

    Hi Srikanth,
    In case of text field you can do this . Its simple.
    You just need to check the rich text property from text field properties
    Now you can select any word and change it to superscript by using the corresponding properties button.
    Moreover I guess If you create a table and save some data by copying from excel or word as superscriipt it gets saved in table. so you can use this way also.
    P.S check this link
    http://scn.sap.com/thread/1033300
    Regards,
    Sandeep Katoch

Maybe you are looking for

  • IPhone 5 screen discolored

    I have owned my iphone 5 since November , I have never dropped it and it has never seen water damage. When watching a movie or when I'm at the main home screen the top of my screen is discolored the black looks like there is white lights showing thre

  • Non-permitted Aggregates error

    Hi...All I need to Vendor Evaluation data to the Cube 0PUR_C02. I have installed the Cube from the Business Content. while Activating the same I got a messages that Some of  the KeyFigures of this cube (e.g. 0QA_SCORE_1, 0QA_SCORE_2, 0SHIP_NOT_2 etc)

  • No margin printing

    Hi, I use an epson R300 printer, but I'm unable to use its no margin feature when I use customize paper size. I have created a special size, 18cmx28cm, I setup all margins to 0, but it still uses margin... So if anybody has an idea... Thanks

  • Filter value -  Exclude option -  Help urgently

    Hi, We have created a query with Vendor Number as Filter and We have excluded few vendor numbers (attributes). This query is working fine now. But, whenever any new vendor numbers are added, we would like to have automatic exclusion for any vendor nu

  • Nalntsrv and winxp sp2

    Hi There I have intermittent problem with nalntsrv service. Users receive error message "Problem: Application Launcher NT Service was not found to run the application as system user." So those applications run as insecure users will not work. Under t