1# Copyright 2021 Northern.tech AS 2 3# This file is part of CFEngine 3 - written and maintained by Northern.tech AS. 4 5# This program is free software; you can redistribute it and/or modify it 6# under the terms of the GNU General Public License as published by the 7# Free Software Foundation; version 3. 8 9# This program is distributed in the hope that it will be useful, 10# but WITHOUT ANY WARRANTY; without even the implied warranty of 11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12# GNU General Public License for more details. 13 14# You should have received a copy of the GNU General Public License 15# along with this program; if not, write to the Free Software 16# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA 17 18# To the extent this program is licensed as part of the Enterprise 19# versions of Cfengine, the applicable Commercial Open Source License 20# (COSL) may apply to this file if you as a licensee so wish it. See 21# included file COSL.txt. 22 23#+begin_src cfengine3 24body common control 25{ 26 bundlesequence => { "yes" }; 27} 28 29bundle agent yes 30{ 31 vars: 32 33 "path1" string => "/one/two/last1"; 34 "path2" string => "one:two:last2"; 35 "path4" string => "/one/two/"; 36 37 "last1" string => lastnode("$(path1)","/"); 38 "last2" string => lastnode("$(path2)",":"); 39 40 "last3" string => lastnode("$(path2)","/"); 41 "last4" string => lastnode("$(path4)","/"); 42 43 reports: 44 "Last / node in / path '$(path1)' = '$(last1)'"; 45 "Last : node in : path '$(path2)' = '$(last2)'"; 46 "Last / node in : path '$(path2)' = '$(last3)'"; 47 "Last / node in /-terminated path '$(path4)' = '$(last4)'"; 48 49} 50#+end_src 51############################################################################### 52#+begin_src example_output 53#@ ``` 54#@ R: Last / node in / path '/one/two/last1' = 'last1' 55#@ R: Last : node in : path 'one:two:last2' = 'last2' 56#@ R: Last / node in : path 'one:two:last2' = 'one:two:last2' 57#@ R: Last / node in /-terminated path '/one/two/' = '' 58#@ ``` 59#+end_src 60