Sponsored Content
Full Discussion: PATH manipulation
Top Forums Shell Programming and Scripting PATH manipulation Post 302351912 by ramesh_samane on Thursday 10th of September 2009 02:29:23 AM
Old 09-10-2009
This is my client's requirement so I cannot question him why he want to do this, I simply have to provide the solution as long as it is not crime by law :-) so it would be better we discuss this purely in technical terms rather than debating if it's appropriate or not.

I am thinking of achieving this by trapping the signal for ENTER (RETURN) key so that I can monitor each command entered by the user and handle them inside my script. I this way when user enters PATH command my script will trigger and handle it inside the script.

Now question is whether there is better way to do this? and How do I TRAP ENTER or RETURN key. Is that possible?

---------- Post updated at 11:59 AM ---------- Previous update was at 11:43 AM ----------

Quote:
Originally Posted by Annihilannic
Why not simply deny them access if they fail authentication?
Also this is not just the question of denying them access. The users should not be able to change PATH and defeat our purpose for changing their PATH. This is the main requirement (fooling the user is secondary and if that is achieved it will be bonus).

Any clues or pointers?
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

vi - replacing a relative path with absolute path in a file

Hi, I have a file with about 60 lines of path: app-defaults/boxXYZ....... I want to change this to /my/path/goes/here/app-defaults/boxXYZ, but of course vi doesn't like the regualr :s/old/new/ command. Is there any other quick way to do this? Thanks ;) (2 Replies)
Discussion started by: Yinzer955i
2 Replies

2. Shell Programming and Scripting

Executing Commands From Non-Standard Path (Changing user's PATH secretely???)

Hi: I have a requirement as below: I have some standard Unix commands modified and kept them in a directory say /usr/clsh/bin. For example I have a script named "ls" kept here which is modified version of "ls" (say it always gives long listing i.e. ls -l). When any user logs on and types... (2 Replies)
Discussion started by: ramesh_samane
2 Replies

3. UNIX for Advanced & Expert Users

PATH manipulation

I have a requirement like this: I have modified versions of certain internal/external commands that I am putting into some directory say /mydir. All the users will go an authentication check once they log in and based on the outcome there are two possibilities: 1. User passes... (1 Reply)
Discussion started by: ramesh_samane
1 Replies

4. Shell Programming and Scripting

Retrieve directory path from full file path through sh

Hi, I have a file abcd.txt which has contents in the form of full path file names i.e. $home> vi abcd.txt /a/b/c/r1.txt /q/w/e/r2.txt /z/x/c/r3.txt Now I want to retrieve only the directory path name for each row i.e /a/b/c/ /q/w/e/ How to get the same through shell script?... (7 Replies)
Discussion started by: royzlife
7 Replies

5. Shell Programming and Scripting

Moving files from parent path to multiple child path using bash in efficient way

Hi All, Can you please provide some pointers to move files from Base path to multiple paths in efficient way.Folder Structure is already created. /Path/AdminUser/User1/1111/Reports/aaa.txt to /Path/User1/1111/Reports/aaa.txt /Path/AdminUser/User1/2222/Reports/bbb.txt to... (6 Replies)
Discussion started by: karthikgv417
6 Replies

6. Shell Programming and Scripting

Pattern match a path anywhere in the line and replace it with new path

I want to pattern match only path part from below and replace them with new path string. LoadModule jk_module /fldrA/fldrBaf/fldrCaa/modules/mod_jk.so JkWorkersFile /fldrA/fldrBaf/fldrCaa/config/OHS/ohs1/workers.properties JkLogFile... (4 Replies)
Discussion started by: kchinnam
4 Replies

7. Shell Programming and Scripting

Generate class path dynamically based on source path

Hi experts, I have multiple file names ending with .jsp located in $SOME_DIR, $SOME_DIR/f1/,$SOME_DIR/f2/test,$SOME_DIR/f3/fa and there are equivalent class files in $SOME_DIR/WEB-INF/classes/_pages,$SOME_DIR/WEB-INF/classes/_pages/_f1,... (0 Replies)
Discussion started by: oraclermanpt
0 Replies

8. UNIX for Advanced & Expert Users

Command to see the logical volume path, device mapper path and its corresponding dm device path

Currently I am using this laborious command lvdisplay | awk '/LV Path/ {p=$3} /LV Name/ {n=$3} /VG Name/ {v=$3} /Block device/ {d=$3; sub(".*:", "/dev/dm-", d); printf "%s\t%s\t%s\n", p, "/dev/mapper/"v"-"n, d}' Would like to know if there is any shorter method to get this mapping of... (2 Replies)
Discussion started by: royalibrahim
2 Replies

9. UNIX for Beginners Questions & Answers

Convert Relative path to Absolute path, without changing directory to the file location.

Hello, I am creating a file with all the source folders included in my git branch, when i grep for the used source, i found source included as relative path instead of absolute path, how can convert relative path to absolute path without changing directory to that folder and using readlink -f ? ... (4 Replies)
Discussion started by: Sekhar419
4 Replies

10. Programming

Makefile missing include path Although the path exists and defined

i have make file which i try to make them generic but it keeps to compline it missing include directory this is the makefile : CXX=g++ CPPFAGS= -Wall -O0 -g -std=c++14 INCLUDES = -I/home/vagrant/libuv/include -Isrc LIBS_DIRS = -L/home/vagrant/libuv/build LDFLAGS=... (7 Replies)
Discussion started by: umen
7 Replies
ENVPATH(1p)						User Contributed Perl Documentation					       ENVPATH(1p)

NAME
envpath - Advanced operations on path variables SYNOPSIS
Run this script with the "-help" option for usage details. DESCRIPTION
Parses the command line, modifies the specified path variable(s), and execs the remaining arguments. There are two modes, simple and advanced: SIMPLE MODE Simple mode presents an alternative, platform-independent syntax for specifying paths wherein the path separator is "," and environment variables can be expanded with @NAME@. For example envpath PATH=@PATH@,/usr/ucb -- printenv PATH appends "/usr/ucb" to $PATH and execs printenv PATH. The "--" is optional. You can also specify prepending or appending by using "+=" or "=+" respectively: # place /usr/ucb at the front envpath PATH+=/usr/ucb -- printenv PATH # place /usr/ucb at the back envpath PATH=+/usr/ucb -- printenv PATH Simple mode requires only this script; it does not require Env::Path to be installed. ADVANCED MODE Advanced mode basically provides command-line access to the features of Env::Path (see), which must be installed. The "-E" flag selects the path variable to operate on and other flags specify operations on it. E.g. envpath -E MANPATH -A /tmp -R /usr/share/man -N -U -- man ... would take MANPATH, append /tmp to it, remove any references to "/usr/share/man", remove any dirs which don't exist ("-N") and remove redundant entries ("-U") before running man. The -Whence option allows patterns. Thus envpath -W "cat*" would find all programs on PATH which match cat*. CLEARCASE WINKINS
A big part of the motivation for this script was for use with ClearCase builds; iff you know or care about ClearCase read on. Typically, during builds (and not just with ClearCase), pathvars such as PATH, CLASSPATH, and LD_LIBRARY_PATH must be strictly controlled. One choice is to force static values of these into the environment during the build process, another is to simply require/expect users to set their paths appropriately. Each of these can lead to subtle build or runtime errors, however, and makes it hard for new users to get up to speed since their personal environment must be just so. Another common choice is to use only full pathnames within the Makefile, avoiding reliance on search paths at all. This is often the best way to go but can suppress ClearCase winkins. For example, say you're generating ascii files of some type with a binary executable you just built: $(INCDIR)/foo.h: $(BINDIR)/foomaker $(BINDIR)/foomaker ... The problem with this is that $(BINDIR) likely contains a platform part such as 'solaris' or 'hpux', which makes it impossible to wink in the foo.h file on other platforms even though it's ascii. This same thing could come up even with a standard pre-built utility that's in different places on different platforms; "yacc", for instance, is in /usr/bin on Linux and /usr/ccs/bin on Solaris. You could modify the path on the fly: $(INCDIR)/foo.h: $(BINDIR)/foomaker PATH=$(BINDIR)$(SEP)$$PATH foomaker ... but this suffers from the same problem: since $(BINDIR) and $PATH are expanded literally within the build script they'll suppress winkins. Here's a solution using envpath: $(INCDIR)/foo.h: $(BINDIR)/foomaker envpath PATH=@BINDIR@,@PATH@ foomaker ... This hides the evaluation of BINDIR and PATH such that clearmake never sees anything but the literals, thus clearing the field for winkins. Of course envpath is capable of doing more than this, but it's the original reason it was written. AUTHOR
David Boyce <dsbperl AT boyski.com> COPYRIGHT
Copyright (c) 2000-2001 David Boyce. All rights reserved. This Perl program is free software; you may redistribute and/or modify it under the same terms as Perl itself. SEE ALSO
perl(1), "perldoc Env::Path" perl v5.10.1 2003-10-10 ENVPATH(1p)
All times are GMT -4. The time now is 07:10 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy